AWS の Lambda や ECS の需要が増えたことにより、CloudWatch Logs の需要も増えてると思う。
でも AWS コンソールから CloudWatch Logs はとても見にくい。そこで awslogs を使ってる人が多いと思う。
🌋 awslogs の問題点
Python2系への依存、これが非常にだるい。Python は pyenv で 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
$ 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