尋常でないもふもふ

a software engineer blog

awslogsはpython2系依存なのでgolang実装のcwをつかう

AWS の Lambda や ECS の需要が増えたことにより、CloudWatch Logs の需要も増えてると思う。
でも AWS コンソールから CloudWatch Logs はとても見にくい。そこで awslogs を使ってる人が多いと思う。

🌋 awslogs の問題点

Python2系への依存、これが非常にだるい。Pythonpyenv で 3 系いれてたりするし。

$ brew info awslogs
awslogs: stable 0.10 (bottled), HEAD
Simple command-line tool to read AWS CloudWatch logs

==> Dependencies
Required: python@2 ✔

🐾 Golang 実装の cw

www.lucagrulla.com

$ brew info cw
lucagrulla/cw/cw: stable 1.7.2
The best way to tail AWS Cloudwatch Logs from your terminal

バイナリ配布が得意な Golang 実装なので依存関係はゼロ。

📝 使い方

Homebrew からインストールできる。

$ brew tap lucagrulla/cw
$ brew install cw

-p~/.aws/credentials のプロファイルを指定可能。tail -f でリアルタイム監視できる。その後ろの第1引数で ロググループ名、第2引数で ログストリーム名 を指定。第3引数で日時指定を UTC で指定できる。

$ cw -p <my_aws_profile> tail -f <my-log-group> <my-log-stream-prefix> <start-time>
$ cw -p jnst tail -f /ecs/my-server ecs/my-server/**** 2018-10-01T08:10:10