{"id":49567338,"url":"https://github.com/kishan-thanki/logprism","last_synced_at":"2026-05-03T12:03:09.418Z","repository":{"id":355236621,"uuid":"1227272620","full_name":"Kishan-Thanki/logprism","owner":"Kishan-Thanki","description":"A high-performance, zero-reflection CLI utility written in Go for transforming structured JSON logs into human-readable, color-coded terminal output.","archived":false,"fork":false,"pushed_at":"2026-05-02T15:47:07.000Z","size":19,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-02T16:25:23.157Z","etag":null,"topics":["cli","cli-tool","go","golang","json","logging","performance","structured-logging","terminal"],"latest_commit_sha":null,"homepage":"https://pkg.go.dev/github.com/Kishan-Thanki/logprism","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Kishan-Thanki.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-02T13:01:40.000Z","updated_at":"2026-05-02T15:54:08.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Kishan-Thanki/logprism","commit_stats":null,"previous_names":["kishan-thanki/logprism"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/Kishan-Thanki/logprism","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kishan-Thanki%2Flogprism","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kishan-Thanki%2Flogprism/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kishan-Thanki%2Flogprism/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kishan-Thanki%2Flogprism/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Kishan-Thanki","download_url":"https://codeload.github.com/Kishan-Thanki/logprism/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kishan-Thanki%2Flogprism/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32568036,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","cli-tool","go","golang","json","logging","performance","structured-logging","terminal"],"created_at":"2026-05-03T12:03:08.551Z","updated_at":"2026-05-03T12:03:09.403Z","avatar_url":"https://github.com/Kishan-Thanki.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# logprism\n\nA high-performance, zero-reflection CLI utility written in Go for transforming\nstructured JSON logs into human-readable, color-coded terminal output.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/demo.gif\" alt=\"logprism animated demo\" width=\"720\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/demo_1.png\" alt=\"raw JSON vs. logprism output\" width=\"48%\"\u003e\n  \u003cimg src=\"docs/demo_2.png\" alt=\"filtering with -filter level=ERROR\"   width=\"48%\"\u003e\n\u003c/p\u003e\n\n`logprism` reads JSON log lines from **stdin**, parses well-known fields\n(`time`, `level`, `service`, `msg` / `message`, `trace_id`), and emits a single\ncolorized line per record on **stdout**. Lines that don't parse as JSON are\npassed through unchanged.\n\n## Install\n\n```sh\ngo install github.com/Kishan-Thanki/logprism/cmd/logprism@latest\n```\n\nThis installs the `logprism` binary into `$GOBIN` (or `$GOPATH/bin`). Make sure\nthat directory is on your `$PATH`.\n\n## Usage\n\nPipe any JSON log stream into `logprism`:\n\n```sh\nmy-service        | logprism\ntail -f app.log   | logprism\ndocker logs -f x  | logprism\n```\n\nOr use file flags directly:\n\n```sh\nlogprism -input app.log\nlogprism -input app.log -output readable.log\n```\n\n### Flags\n\n| Flag                | Description                                                              |\n|---------------------|--------------------------------------------------------------------------|\n| `-input \u003cpath\u003e`     | Read from file instead of stdin (`-` means stdin).                       |\n| `-output \u003cpath\u003e`    | Write to file instead of stdout (`-` means stdout). Disables color.      |\n| `-filter key=value` | Only emit records where `key` equals `value`. Repeatable (AND-ed).       |\n| `-pretty`           | Indent nested JSON values across multiple lines.                         |\n| `-no-color`         | Disable ANSI color output (auto-disabled when piped or writing a file).  |\n| `-version`          | Print the version and exit.                                              |\n\n### Filtering\n\n```sh\ntail -f app.log | logprism -filter level=ERROR\ntail -f app.log | logprism -filter level=INFO -filter service=api\n```\n\n`-filter` matches strings, numbers (`-filter status=200`), bools, and `null`.\nMultiple `-filter` flags AND together. Records that don't parse as JSON are\ndropped when any filter is active.\n\n### Output format\n\n```\n\u003ctime\u003e | [LEVEL] \u003cservice\u003e | \u003ctrace_id\u003e | \u003cmsg\u003e | k1=v1 | k2=v2 | ...\n```\n\n- Extra fields (anything not in the well-known set) are appended in\n  **alphabetical order** for stable, diff-friendly output.\n- Missing `trace_id` is rendered as the all-zero UUID.\n- Level is colored: `ERROR`/`FATAL`/`PANIC` red, `WARN` yellow, `INFO` blue,\n  `DEBUG` gray.\n\n### Example\n\nInput:\n\n```json\n{\"time\":\"2026-05-02T10:00:00Z\",\"level\":\"INFO\",\"service\":\"api\",\"msg\":\"request\",\"trace_id\":\"abc-123\",\"status\":200,\"path\":\"/health\"}\n```\n\nOutput (color stripped):\n\n```\n2026-05-02T10:00:00Z | [INFO] api | abc-123 | request | path=/health | status=200\n```\n\n## Examples\n\nSample log files and ready-to-run commands live in [`examples/`](examples/).\n\n## License\n\nSee [LICENSE](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkishan-thanki%2Flogprism","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkishan-thanki%2Flogprism","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkishan-thanki%2Flogprism/lists"}