Big JSONL Viewer (VS Code 확장)

.jsonl과 .ndjson 파일을 에디터 안에서 바로 빠르고 검색 가능한 표로 엽니다. 스크롤조차 버거운 큰 파일과, 지금도 기록되고 있는 로그를 위해 만들었습니다.

설치

VS Code Marketplace에서 받기

명령줄에서 설치하려면:

code --install-extension rootfily.big-jsonl-viewer

또는 VS Code 확장 패널에서 “Big JSONL Viewer”를 검색하세요.

무료, MIT 라이선스.

이 사이트도 큰 파일을 여는데, 왜 확장이 필요한가요?

같은 문제의 서로 다른 절반을 맡고 있기 때문입니다. jsonl.co는 지금 손에 들고 있는 파일 하나를 위한 곳입니다. 끌어다 놓고, 보고, 변환하고, 떠납니다. 확장은 원래 작업하는 자리에 있는 파일을 위한 것입니다. 저장소 안, SSH로 접속한 서버 위, 컨테이너 속에 있는 파일들이죠.

지금도 늘어나는 로그

브라우저가 보는 것은 선택한 순간의 파일 스냅샷뿐입니다. 확장은 디스크의 파일을 감시하다가 새 줄이 들어오면 인덱스를 증분으로 확장하고, tail -f처럼 끝을 따라갑니다.

그 자리에서 수정하고 저장

깨진 줄을 고치고 Cmd+S를 누르면 끝입니다. 파일은 스트리밍으로 다시 기록되므로, 수 GB 파일에서도 줄 길이가 바뀌는 것이 안전합니다.

파일이 있는 곳에서 그대로

Remote-SSH, Dev Containers, WSL — 코드가 도는 곳에서 확장도 돕니다. 세 줄을 읽자고 4 GB 로그를 노트북으로 내려받을 필요가 없습니다.

할 수 있는 것

표 보기
열은 앞쪽 몇 줄에서 표본을 뽑아 정하고 가상 스크롤로 그립니다. 100만 줄짜리 파일도 짧은 파일처럼 스크롤됩니다.
검색과 필터
원본 줄에 대한 부분 문자열 일치, 또는 파싱된 객체에 대한 key:value 일치로 찾을 수 있습니다. 필터 모드는 일치하지 않는 줄을 모두 숨깁니다.
파싱 오류를 그 자리에 표시
형식이 깨진 줄은 원래 위치에 강조되고 파서의 메시지가 함께 표시됩니다. 더 이상 이분 탐색으로 문제 줄을 찾지 않아도 됩니다.
초대용량 파일을 위한 설계
줄 위치의 바이트 오프셋 인덱스를 한 번만 만들어 캐시하고, 이후에는 화면에 보이는 범위만 디스크에서 읽습니다. 크기와 무관하게 여는 것은 순식간입니다.
아무 줄이나 펼치기
파싱된 JSON을 트리로 보고, 원본 줄을 텍스트로 확인하고, 그 자리에서 수정할 수 있습니다.
데이터는 기기를 떠나지 않습니다
파일은 디스크에서 읽어 CSP로 제한된 webview에 그립니다. 업로드도, 네트워크 호출도 없으며 텔레메트리는 기본적으로 꺼져 있습니다.

FAQ

.ndjson 파일도 되나요?

됩니다. NDJSON과 JSONL은 같은 형식의 다른 이름이며 확장은 둘을 똑같이 다룹니다. 기본적으로 .jsonl의 편집기로 등록되며, .ndjson이나 .txt는 “Open With…”에서 JSONL Viewer를 고르면 됩니다.

얼마나 큰 파일을 열 수 있나요?

수 GB가 설계 목표입니다. 줄 위치의 바이트 오프셋 인덱스를 만들어 캐시한 뒤 실제로 보고 있는 줄만 읽기 때문에, 파일이 커져도 메모리 사용량은 거의 일정합니다.

데이터가 어딘가로 전송되나요?

아닙니다. 파일은 디스크에서 읽어, 네트워크 호출을 할 수 없는 CSP 제한 webview에 그립니다. VS Code의 제한 모드에서도 동작하며 작업 공간의 코드를 실행하지 않습니다. 선택적 사용 텔레메트리는 기본으로 꺼져 있습니다.

수정도 되나요, 아니면 읽기 전용인가요?

수정됩니다. 줄을 펼쳐 원본 텍스트를 고친 뒤 Cmd+S나 저장 버튼으로 저장하세요. 변경은 패치 맵으로 관리되고 파일은 스트리밍으로 다시 기록되므로 줄이 길어지거나 짧아져도 안전합니다.

Remote-SSH나 컨테이너에서도 쓸 수 있나요?

쓸 수 있고, 사실 그게 핵심입니다. 확장은 파일이 있는 머신에서 돌기 때문에 원격 서버의 로그를 내려받지 않고 바로 읽을 수 있습니다. 가상 파일 시스템은 줄 인덱스가 실제 파일에 대한 바이트 오프셋 접근을 필요로 하므로 지원하지 않습니다.

잠깐 보거나 변환만 하면 되나요?

이 사이트의 도구는 전부 브라우저 안에서 실행됩니다. 업로드도 가입도 없습니다. 일회성 변환과 검증은 그쪽에서, 프로젝트 안에 있는 파일은 확장으로 다루세요.

JSONL 도구 둘러보기