{"id":27003168,"url":"https://github.com/handofgod94/kafkatail","last_synced_at":"2025-09-07T14:34:55.926Z","repository":{"id":37966505,"uuid":"379504065","full_name":"HandOfGod94/kafkatail","owner":"HandOfGod94","description":"tail kafka logs from any topic, any wire format on local console","archived":false,"fork":false,"pushed_at":"2023-12-18T22:21:44.000Z","size":264,"stargazers_count":6,"open_issues_count":6,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-06-20T21:27:49.805Z","etag":null,"topics":["cli","console-application","golang","kafka","tail"],"latest_commit_sha":null,"homepage":"","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/HandOfGod94.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-06-23T06:37:34.000Z","updated_at":"2024-05-28T09:24:17.000Z","dependencies_parsed_at":"2023-01-26T00:40:16.816Z","dependency_job_id":null,"html_url":"https://github.com/HandOfGod94/kafkatail","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HandOfGod94%2Fkafkatail","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HandOfGod94%2Fkafkatail/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HandOfGod94%2Fkafkatail/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HandOfGod94%2Fkafkatail/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HandOfGod94","download_url":"https://codeload.github.com/HandOfGod94/kafkatail/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247123046,"owners_count":20887261,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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","console-application","golang","kafka","tail"],"created_at":"2025-04-04T05:15:37.489Z","updated_at":"2025-04-04T05:15:38.134Z","avatar_url":"https://github.com/HandOfGod94.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kafkatail\n\n[![build](https://github.com/HandOfGod94/kafkatail/actions/workflows/build.yml/badge.svg)](https://github.com/HandOfGod94/kafkatail/actions/workflows/build.yml)\n[![test](https://github.com/HandOfGod94/kafkatail/actions/workflows/test.yml/badge.svg)](https://github.com/HandOfGod94/kafkatail/actions/workflows/test.yml)\n\n:construction: **Work In Progress** :construction:  \n:construction: **Proceed with caution** :construction:\n\n## Overview\n\nCLI app to tail kafka logs on console from any topic having messages in any format: Plaintext, proto, ...\n\n**Contents**  \n- [Kafkatail](#kafkatail)\n  - [Overview](#overview)\n    - [Installation](#installation)\n      - [MacOS using `homebrew`](#macos-using-homebrew)\n      - [Linux using `snap`](#linux-using-snap)\n      - [Windows using `scoop`](#windows-using-scoop)\n      - [Go Toolchain](#go-toolchain)\n      - [Github Releases](#github-releases)\n    - [QuickStart](#quickstart)\n    - [Usage](#usage)\n    - [Examples](#examples)\n    - [Known Limitation](#known-limitation)\n    - [Development](#development)\n\n### Installation\n\nFeel free to use any of the available methods\n\n#### MacOS using `homebrew`\n```sh\nbrew install handofgod94/tap/kafkatail\n```\n\n#### Linux using `snap`\n```sh\n# currently only available on beta and edge channels\nsudo snap install kafkatail --beta\nsudo snap install kafkatail --edge\n```\n\n#### Windows using `scoop`\n```cmd\nscoop add handofgod94-bucket https://github.com/HandOfGod94/scoop-bucket.git\nscoop install kafkatail\n```\n\n#### Go Toolchain\n  + For Go 1.16 or higher\n    ```sh\n    go install github.com/handofgod94/kafkatail@v0.2.0\n    ```\n\n  + For go version \u003c= 1.15\n    ```sh\n    GO111MODULE=on go get github.com/handofgod94/kafkatail@v0.2.0\n    ```\n    The go binary will be installed in `$GOPATH/bin`\n\n#### Github Releases\n* Download executable binaries from [Release](https://github.com/HandOfGod94/kafkatail/releases) page\n\n\n### QuickStart\n\n`$ kafkatail --version`\n```\nkafkatail version 0.2.0\n```\n\n### Usage\n\n`$ kafkatail --help`\n```\nTail kafka messages from any topic, of any wire format on console (plaintext, protobuf)\n\nUsage:\n  kafkatail [flags] topic\n\nFlags:\n  -b, --bootstrap_servers bootstrap_servers   list of kafka bootstrap_servers separated by comma\n      --from_datetime string                  tail from specific past datetime in RFC3339 format (default \"0001-01-01T00:00:00Z\")\n      --group_id group_id                     [Optional] kafka consumer group_id to be used for subscribing to topic\n  -h, --help                                  help for kafkatail\n      --include_paths include_paths           include_paths containing dependencies of proto. Required for `wire_format=proto`\n      --message_type type                     proto message type to use for decoding . Required for `wire_format=proto`\n      --offset int                            kafka offset to start consuming from. Possible Values: -1=latest, -2=earliest, n=nth offset (default -1)\n      --partition either[int, string]         kafka partition to consume from. Can be int(0,1,2,...) or \"all\" (default all)\n      --proto_file proto_file                 proto_file to be used for decoding kafka message. Required for `wire_format=proto`\n  -v, --version                               version for kafkatail\n      --wire_format wire_format[=plaintext]   Wire format of messages in topic (default plaintext)\n```\n\n### Examples\n```sh\n# tail messages from a topic\nkafkatail --bootstrap_servers=localhost:9093 kafkatail-test\n\n# tail proto messages from a topic\nkafkatail --bootstrap_servers=localhost:9093 --wire_format=proto --proto_file=starwars.proto --include_paths=\"../testdata\" --message_type=Human kafkatail-test-proto\n\n# tail messages from an offset. Default: -1 (latest). For earliest, use offset=-2\nkafkatail --bootstrap_servers=localhost:9093 --offset=12 kafkatail-test-base\n\n# tail messages from specific time\nkafkatail --bootstrap_servers=localhost:9093 --from_datetime=2021-06-28T15:04:23Z kafkatail-test-base\n\n# tail messages from specific partition. Default: 0\nkafkatail --bootstrap_servers=localhost:9093 --partition=5 kafkatail-test-base\n\n# tail from multiple partitions, using group_id\nkafkatail --bootstrap_servers=localhost:9093 --group_id=myfoo kafka-consume-gorup-id-int-test\n\n# tail from multiple partitions WITHOUT group_id\nkafkatail --bootstrap_servers=localhost:9093 --partition=all kafka-consume-gorup-id-int-test\n# or simply\nkafkatail --bootstrap_servers=localhost:9093 kafka-consume-gorup-id-int-test\n\t\n```\n\n### Known Limitation\n\n* `--offset` option doesn't work with `--gorup_id`\n* No `avro`, `thirft`, `\u003ccustom\u003e` decoding support yet.  \n  Only supports `protobuf` and `plaintext` for now\n\n### Development\n* Minimum go version: `1.18`\n* Ruby version: `2.7.1` (for running cucumber-tests)\n\n```sh\n# to run dev checks and create binary\nmake\n\n# to run test\nmake test\n\n# to run integration tests\n# it requires ruby to be installed\n# download cucumber dependencies\nmake cucumber-setup\n\n# run cucumber tests\nmake cucumber-test\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhandofgod94%2Fkafkatail","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhandofgod94%2Fkafkatail","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhandofgod94%2Fkafkatail/lists"}