システムのログをAmazon S3に保存しているという会社は多いかと思います。そして、そのログの中で特定のメッセージが来たら分かるようにしたいというワークフローは多いでしょう。定型化されればシステムを組んでも良いですが、都度変わる場合にはデータをダウンロードして検索して…といった手間暇をかける必要があります。 そこで使ってみたいのがs3stです。Amazon S3のデータをストリーミングにダウンロードできるソフトウェアです。

s3stの使い方

s3stコマンドを実行する例です。単一、または複数のオブジェクトを指定できます。

$ s3st bucketName path/to/objects/
< !DOCTYPE html>
<html>
<head>
	<meta charset="utf-8" />
	<meta http-equiv="Pragma" content="no-cache"/>
	<meta http-equiv="Cache-Control" content="no-cache"/>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
	<meta http-equiv="Content-Language" content="ja" />
	<meta http-equiv="Content-Style-Type" content="text/css" />
	<meta http-equiv="Content-Script-Type" content="text/javascript" />
	<meta http-equiv="imagetoolbar" content="no" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<meta name="robots" content="all" />

パスをディレクトリで指定すれば、複数のファイルの内容が流れてきます。後はgrepなりを使ってフィルタリングすれば良いでしょう。gz/zz/brといった圧縮ファイルであれば自動的にい解凍しながら出力してくれる機能もあります。

s3stはnode/JavaScript製のオープンソース・ソフトウェア(MIT License)です。

lmammino/s3st: A command line utility that allows you to stream data from multiple S3 objects directly into your terminal