Golang

Swarmの運用用にdocker statsコマンドを監視するMuninのplugin作った

最近、Docker Swarmの運用を始めて一台のマシンに存在するコンテナが増えてきたので、監視用のmuninのプラグイン作りました。 取得できる項目 docker statsと同等の情報が取得できます。NET I/OとBLOCK I/Oは積算値ではなく、前回との差分値を出力します。 C…

ALB/ELBのアクセスログを時間指定でダウンロードして標準出力してgrep検索可能にするツール作った

AWS ALBやELBのアクセスログですが、5分毎に出力していると大量のファイルになります。 調査するにしても複数の細かく分かれたファイルを結合したり、JSTとUTCの差を失念していて勘違いしたり、S3のフォルダ構造深かったり、ALBのアクセスログはgzip形式なの…

引数で渡した複数のストリームを行単位でマージしリアルタイム出力するコマンド作った

ツール書きました。 github.com 例えば以下のような3つのコマンドを同時に実行して、結果をリアルタイムでマージして出力したいとします。 1 (sleep 1;echo SlowSlow) 2 (sleep 0;for i in $(seq 1 25);do printf aaa;echo;done) 3 (sleep 0;for i in $(seq …

Golangの練習で簡単な構文解析型のCUI電卓作ってみた

1ヵ月前くらいからGolangを書き始めています。さきほど練習で書いたプログラムを技術向上のためにもここにメモ。 仕様 利用できる変数はa〜zの26個 a=10+20 の形で演算と代入処理可能 ( ) + - * /の演算子を利用 ? で結果出力する 練習なので基本パッケージ…

Redis監視するためのNagiosプラグイン作ってみた(Golang)

Nagiosの監視しようとRedisプラグイン探してみたら以下が見つかりました。 check_redis.pl - Nagios Exchange ただ、PerlやPHPが必要だったので、バイナリファイルを置くだけで動くGoでプラグインを作ってみました。 コマンドのオプション オプション 説明 -…