it-box

JSON Lines 변환기

JSON 배열과 JSONL / NDJSON을 양방향 변환합니다.

JSON Lines 변환기 도구 열기

한 줄에 JSON 값 하나씩 든 JSON Lines 형식과 JSON 배열을 서로 바꿉니다.

사용 순서

  1. 변환 방향을 고릅니다. JSON Lines를 배열로 바꿀지, 배열을 줄 단위로 바꿀지 정합니다.
  2. 입력란에 줄 단위 JSON 또는 최상위 배열을 붙여 넣습니다.
  3. 오류가 나면 표시된 줄 번호를 기준으로 해당 줄을 고칩니다.
  4. 결과를 복사해 로그 파일이나 다른 도구에 저장합니다.

예시

{"id":1} 줄과 {"id":2} 줄 사이에 빈 줄을 넣고 JSON Lines에서 배열로 바꾸면 [{"id":1},{"id":2}]가 됩니다. 빈 줄은 무시되고 결과는 들여쓰기된 형태로 나옵니다.

한계

빈 줄은 무시합니다. 각 줄에는 완전한 표준 JSON 값이 하나씩 있어야 하며, 한 줄에 객체를 여러 개 넣거나 객체가 여러 줄에 걸치면 오류가 납니다. 오류 메시지는 실제 줄 번호를 알려 줍니다. 배열을 줄 단위로 바꿀 때는 최상위 배열만 받고, 결과 마지막 줄에는 줄바꿈이 붙지 않습니다. 주석과 JSON5는 지원하지 않으며 입력은 2 MiB까지 받습니다.

보안 주의

로그 한 줄에는 요청 ID, 세션 토큰, 사용자 이메일이 함께 들어 있는 경우가 많습니다. 붙여 넣기 전에 grep이나 jq로 필요한 필드만 추리고, 변환 결과를 이슈나 문서에 옮기기 전에 민감한 필드가 없는지 한 번 더 확인하세요.

배경 지식

JSON Lines는 줄마다 독립된 JSON 값 하나를 담는 텍스트 형식입니다. 줄 단위로 읽고 쓸 수 있어서 로그 수집기, 데이터 파이프라인, 대량 내보내기 파일에 많이 쓰입니다. 전체 파일을 한꺼번에 파싱하지 않아도 되므로 큰 파일을 앞에서부터 처리하기 좋습니다. 한 줄이 깨져도 그 줄만 오류로 표시되어 원인을 찾기 쉽습니다.

반대로 JSON 배열은 전체를 대괄호로 감싼 하나의 값이라서 파일 끝까지 읽혀야 완성됩니다. 파일이 중간에 끊기면 배열 전체가 깨지지만, 줄 단위 형식은 손상된 줄만 따로 찾아낼 수 있습니다. 두 형식을 상황에 맞게 오가는 일이 실무에서 자주 생깁니다. 예를 들어 로그 수집기가 내보낸 줄 단위 파일을 분석 도구에 넣으려고 배열로 바꾸거나, 반대로 API 응답 배열을 로그 수집기에 넣으려고 줄 단위로 바꾸는 경우입니다.

자주 묻는 질문

마지막 줄에 줄바꿈이 없어도 되나요?

네, 괜찮습니다. 빈 줄은 무시되므로 마지막 줄 뒤의 줄바꿈 유무는 결과에 영향을 주지 않습니다. 배열을 줄로 바꾼 결과에도 마지막 줄 뒤에 줄바꿈이 없으니 파일로 저장할 때 필요하면 직접 추가하세요.

들여쓰기된 JSON 객체도 넣을 수 있나요?

넣을 수 없습니다. JSON Lines에서는 객체 하나가 한 줄에 있어야 합니다. 먼저 한 줄로 압축한 뒤 붙여 넣어야 하며, 여러 줄에 걸친 객체는 시작 줄에서 잘못된 줄 오류가 납니다.

로그에서 일부 줄만 골라 변환할 수 있나요?

도구 안에는 줄을 골라 내는 기능이 없습니다. 필요한 줄만 grep으로 먼저 추려서 붙여 넣거나, 특정 값만 필요하면 jq로 필터링한 뒤 결과를 넣는 편이 빠릅니다.