lens file viewer for jira
Atlassian Marketplacein reviewruns on Atlassian
The log from the failing node, the CSV export and the spreadsheet the customer sent all end up attached to the issue, where reading any of them has meant a download first. Lens File Viewer for Jira opens them on the issue. The panel lists the issue's data file attachments, and the one you pick renders as a paged table right there, its bytes fetched in small ranges through the Jira API as the person viewing the issue, so someone who cannot download an attachment cannot read it through the viewer either. It opens logs and plain text, CSV and TSV, JSONL and NDJSON, Parquet, Excel workbooks and the gzip-wrapped .log.gz, .jsonl.gz and .csv.gz. A log is line indexed and scanned for severity on the way in. ERROR, WARN, INFO, DEBUG and TRACE chips show the counts, and one click narrows the view to a level.
- opens
- logs and plain text (.log, .txt, .out), CSV and TSV, JSONL and NDJSON, Parquet with snappy, gzip, zstd or lz4 columns, Excel .xlsx and .xlsm, and the gzip-wrapped .log.gz, .jsonl.gz and .csv.gz
- runs on
- Jira Cloud, on Atlassian, with no vendor servers
- store
- in review on the Atlassian Marketplace; the listing is not public yet
- version
- 2.1.0, submitted 2026-08-28, in review

what it does
- The panel: press the app actions button under the issue title and choose Lens File Viewer; it lists the issue's data files, and when exactly one is a supported format it opens directly
- Logs and plain text: line indexed; once the level scan finishes, chips show how many ERROR, WARN, INFO, DEBUG and TRACE lines the file has, one click filters to a level and a second click clears it; stack-trace continuation lines stay attached
- CSV and TSV: delimiter sniffing, header detection and quoted fields
- JSONL and NDJSON: records indexed in the background while the first rows render
- Excel: the first sheet with headers detected and date and number formats applied, every sheet listed in the Schema tab, macros never run; a legacy .xls is refused with a plain message
- Parquet: a Schema tab with column types, codecs, encodings and per-column statistics
- Search: scans the whole file and reports a hit count; the arrows jump between matches and Aa toggles case
- Gzip: .log.gz, .jsonl.gz and .csv.gz inflate in the browser under a 384 MB decompressed ceiling; a larger file asks for a download instead
- Row detail: any row opens whole, with a copy button
what it asks for
- read:jira-work, the classic read scope: the attachment list of the issue the panel is open on, then byte ranges of the one attachment you chose to open, fetched as you
- No write scope: the app has no backend of its own, makes no request to any server outside Atlassian, and keeps no copy of your data anywhere
- What it stores: one small record in your browser storage, the counter behind the one-time request for a review; nothing outside your site
- Permissions follow Jira: someone who cannot download an attachment cannot see it through the viewer either

what's new
- 2.1.0submitted 2026-08-28
First release. It reads CSV, Excel XLSX, JSONL, Parquet, plain text and logs, and it shows them as paged tables on the issue. Log lines are scanned for severity so you can filter to a level with one click. A gzip wrapped log or CSV inflates in place. Reads happen as small byte ranges with the viewer permissions, so a big file opens fast and stays private. There are no vendor servers and nothing is stored.
more
- reading data attachments in Confluence and Jira
- every format, every product
- the Confluence edition
- security policy
- support
Pricing, invoices and licensing questions go to [email protected]; anything else about the product to [email protected].