{"id":15038854,"url":"https://github.com/tylerbrock/saw","last_synced_at":"2025-04-07T23:11:51.041Z","repository":{"id":24597295,"uuid":"99600947","full_name":"TylerBrock/saw","owner":"TylerBrock","description":"Fast, multi-purpose tool for AWS CloudWatch Logs","archived":false,"fork":false,"pushed_at":"2023-03-27T08:33:24.000Z","size":82,"stargazers_count":1429,"open_issues_count":46,"forks_count":84,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-04-07T23:11:34.572Z","etag":null,"topics":["aws","cli","cloudwatch-logs","color","json","logs","streamer","streaming","tail","watch"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TylerBrock.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":"FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null},"funding":{"github":"TylerBrock"}},"created_at":"2017-08-07T17:06:22.000Z","updated_at":"2025-04-07T06:06:23.000Z","dependencies_parsed_at":"2023-02-15T23:30:37.954Z","dependency_job_id":"b26da156-8fab-4e33-9abf-cd802fcc8c9f","html_url":"https://github.com/TylerBrock/saw","commit_stats":{"total_commits":129,"total_committers":12,"mean_commits":10.75,"dds":"0.16279069767441856","last_synced_commit":"00fd4b4c7df009add8af2b7d6c1629cd174217fe"},"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TylerBrock%2Fsaw","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TylerBrock%2Fsaw/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TylerBrock%2Fsaw/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TylerBrock%2Fsaw/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TylerBrock","download_url":"https://codeload.github.com/TylerBrock/saw/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247744335,"owners_count":20988783,"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":["aws","cli","cloudwatch-logs","color","json","logs","streamer","streaming","tail","watch"],"created_at":"2024-09-24T20:40:30.882Z","updated_at":"2025-04-07T23:11:51.018Z","avatar_url":"https://github.com/TylerBrock.png","language":"Go","funding_links":["https://github.com/sponsors/TylerBrock"],"categories":[],"sub_categories":[],"readme":"# Saw\n\n`saw` is a multi-purpose tool for AWS CloudWatch Logs\n\n![Saw Gif](https://media.giphy.com/media/3fiohCfMJAKf7lhnPp/giphy.gif)\n\n[![Go Report Card](https://goreportcard.com/badge/github.com/TylerBrock/saw)](https://goreportcard.com/report/github.com/TylerBrock/saw)\n\n## Features\n\n- Colorized output that can be formatted in various ways\n    - `--expand` Explode JSON objects using indenting\n    - `--rawString` Print JSON strings instead of escaping (\"\\n\", ...)\n    - `--invert` Invert white colors to black for light color schemes\n    - `--raw`, or `--pretty`, for `watch` and `get` commands respectively, toggles display of the timestamp and stream name prefix.\n\n- Filter logs using CloudWatch patterns\n    - `--filter foo` Filter logs for the text \"foo\"\n\n- Watch aggregated interleaved streams across a log group\n    - `saw watch production` Stream logs from production log group\n    - `saw watch production --prefix api` Stream logs from production log group with prefix \"api\"\n\n## Usage\n\n- Basic\n    ```sh\n    # Get list of log groups\n    saw groups\n\n    # Get list of streams for production log group\n    saw streams production\n    ```\n\n- Watch\n    ```sh\n    # Watch production log group\n    saw watch production\n\n    # Watch production log group streams for api\n    saw watch production --prefix api\n\n    # Watch production log group streams for api and filter for \"error\"\n    saw watch production --prefix api --filter error\n    ```\n\n- Get\n    ```sh\n    # Get production log group for the last 2 hours\n    saw get production --start -2h\n\n    # Get production log group for the last 2 hours and filter for \"error\"\n    saw get production --start -2h --filter error\n\n    # Get production log group for api between 26th June 2018 and 28th June 2018\n    saw get production --prefix api --start 2018-06-26 --stop 2018-06-28\n    ```\n\n### Profile and Region Support\n\nBy default Saw uses the region and credentials in your default profile. You can override these to your liking using the command line flags:\n\n```sh\n# Use personal profile\nsaw groups --profile personal\n\n# Use us-west-1 region\nsaw groups --region us-west-1\n```\n\n## Installation\n\n### Run from Docker\n\n```sh\ndocker run --rm -it -v ~/.aws:$HOME/.aws tbrock/saw\n```\n\n### Mac OS X\n\n```sh\nbrew tap TylerBrock/saw\nbrew install saw\n```\n\n### Linux\n\n#### Arch Linux (source)\n\n```sh\n# Using yay\nyay saw\n\n# Using makepkg\ngit clone https://aur.archlinux.org/saw.git\ncd saw\nmakepkg -sri\n```\n\n#### Red Hat Based Distributions (Fedora/RHEL/CentOS/Amazon Linux)\n```sh\nrpm -i \u003clink_to_rpm_you_need_from_releases\u003e\n```\n\n#### Debian Based Distributions (Debian/Ubuntu)\n```sh\nwget \u003clink_to_deb_you_need_from_releases\u003e\nsudo dpkg -i \u003cthe_deb_name\u003e\n```\n\n### Manual Install/Update\n\n- [Install go](https://golang.org/doc/install)\n- Configure your `GOPATH` and add `$GOPATH/bin` to your path\n- Run `go install github.com/TylerBrock/saw@latest`\n\n#### Windows Specifics\n\n- Add %GOPATH%/bin to your path (optional)\n- Run from gopath/bin (If not in your path)\n    ```DOS .bat\n    cd %GOPATH%/bin\n    saw ...\n    ```\n\nAlternatively you can hard code these in your shell's init scripts (bashrc, zshrc, etc...):\n\n```sh\n# Export profile and region that override the default\nexport AWS_PROFILE='work_profile'\nexport AWS_REGION='us-west-1'\n```\n\n## Run Tests\nFrom root of repository: `go test -v ./...`\n\n## TODO\n\n- Bash + ZSH completion of log groups + (streams?)\n- Create log streams and groups\n- Delete log streams and groups\n- Basic tests\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftylerbrock%2Fsaw","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftylerbrock%2Fsaw","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftylerbrock%2Fsaw/lists"}