- Go 92%
- Shell 4.9%
- C 1.7%
- Makefile 1.3%
- Dockerfile 0.1%
This commit adds two major features and fixes: 1. SSH Agent Key Selection: - Add --agentKeyIndex flag to select specific SSH agent key (0-based) - Solves "too many authentication failures" with multiple SSH keys - Default -1 uses all keys (backwards compatible) - Available in dtail, dcat, dgrep, dmap commands 2. MapReduce Outfile Fixes: - CSV files now written at every interval, not just on exit - Proper signal handling (SIGTERM/SIGINT) with graceful shutdown - 5-second grace period for cleanup before force exit - Fixes issue where outfile remained as .tmp during execution Usage: dtail --servers host --agentKeyIndex 0 --query '...' outfile results.csv This is particularly useful with YubiKey/hardware tokens where many keys are loaded in the SSH agent, and for monitoring MapReduce results in real-time as they're computed. Co-authored-by: Cursor <cursoragent@cursor.com> |
||
|---|---|---|
| .github | ||
| benchmarks | ||
| cmd | ||
| doc | ||
| docker | ||
| docs | ||
| examples | ||
| integrationtests | ||
| internal | ||
| .gitignore | ||
| _config.yml | ||
| AGENTS.md | ||
| CLAUDE.md | ||
| CNAME | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| go.mod | ||
| go.sum | ||
| inventory.yaml | ||
| LICENSE | ||
| LICENSE.DataDog.zstd | ||
| Makefile | ||
| README.md | ||
| TOOD.md | ||
DTail
DTail (a distributed tail program) is a DevOps tool for engineers programmed in Google Go for following (tailing), catting and grepping (including gzip and zstd decompression support) log files on many machines concurrently. An advanced feature of DTail is to execute distributed MapReduce aggregations across many devices.
For secure authorization and transport encryption, the SSH protocol is used. Furthermore, DTail respects the UNIX file system permission model (traditional on all Linux/UNIX variants and also ACLs on Linux based operating systems).
The DTail binary operates in either client or server mode. The DTail server must be installed on all server boxes involved. The DTail client (possibly running on a regular Laptop) is used interactively to connect to the servers concurrently. That currently scales to multiple thousands of servers per client. Furthermore, DTail can be operated in a serverless mode too. Read more about it in the documentation.
If you like what you see look here for more examples! You can also read through the DTail Mimecast Engineering Blog Post.
Installation and Usage
- Check out the DTail Documentation
More
Credits
- DTail was created by Paul Buetow pbuetow@mimecast.com
- Thank you Mimecast for supporting this Open-Source project.
- Thank you to Vlad-Marian Marian for creating the DTail (dog) logo.
- The Gopher was generated at https://gopherize.me

