Nginx logs move fast: the default combined access format squeezes client IP, timestamp, request line, status and bytes into one line, and production tuning quickly adds $request_time for latency tracking or switches to the structured JSON log format (escape=json) entirely for shipping to a log pipeline. Nginx Access Log Parser reads all three and puts them on screen as one sortable table — client IP, ISO 8601 timestamp, method, path, status, bytes, and request time or upstream fields when your configuration includes them.
Because Nginx setups differ, the parser detects which of the common layouts a line uses: the default combined format (%h %l %u [%t] "%r" %>s %b "referer" "user-agent"), the same layout with $request_time appended, or the structured JSON format that exposes fields like upstream_response_time directly. Mixed files are handled line by line, so a fleet that logs both an old format and a newly tuned one parses cleanly in a single paste — each line is matched independently, and lines that fit neither layout are reported as failures rather than silently skipped or mis-split.
Alongside the table, the tool compiles every $request_time value across the pasted lines into count, average, minimum, maximum and p50/p95/p99 percentile metrics — the fastest way to find the slow-log needles a latency SLO cares about without loading the file into a spreadsheet or a script. The status cards break the response codes down by class (2xx/3xx/4xx/5xx) so a spike of 5xx errors or a wave of 403s from a bot scan is visible at a glance, and the request-method totals and unique client IP count give a quick read on traffic shape. Every parsed row keeps its original line number, so a slow or failing request found in the table can be traced straight back to the source file.
Typical uses: pulling the slowest endpoints out of a busy hour to feed a performance review, checking whether a deploy caused a burst of 502s from an upstream, converting an access.log excerpt to CSV for a spreadsheet-based incident report, or normalizing JSON-formatted access logs and combined-format logs from different hosts into one comparable table. CSV, JSON and a printable view cover the hand-off to dashboards and postmortems, and everything — parsing, percentile math, exports — runs locally in the browser; the log text is never sent anywhere.