v1.13.0 — 入口を開ける
巨大なログを見るための道具なのに、そのログは素のファイルとして転がっていないことが多い。パイプの向こうにあるか、圧縮されている。中でどれだけ機能があっても、そこへ届かなければ意味がありません。
入口を開けました
kubectl logs -f pod/api | mreditor # パイプでそのまま
mreditor app.log.gz # gzip は展開して開く
mreditor logs.zip # zip も。複数入っていれば選ばせるmreditor コマンドは 1 行で入ります(アプリ本体への symlink なので、アプリを更新しても張り直しは要りません)。
ln -sf /Applications/MrEditor.app/Contents/MacOS/MrEditor /usr/local/bin/mreditorコマンドを使わなくても、ダブルクリックや「このアプリケーションで開く」で .gz や .zip はそのまま開けます。
判定は拡張子ではなく中身で行います。 .log のまま gzip されたファイルも、.gz という名前なのに素のテキストのファイルも、実際に世の中にあります。先頭の数バイトを見て決めるので、どちらも正しく開きます。
末尾が欠けていても、出せたところまでは開きます。 落ちたログの尻尾が切れているのは日常で、「壊れているので何も見せません」は、この道具が一番してはいけない返事です。
zip に複数のファイルが入っていれば、名前を並べて訊きます。1 つしか入っていなければ黙って開きます —— 選択肢が 1 つのダイアログは、確認ではなく手間でしかないので。__MACOSX/ と .DS_Store は出しません(Finder で圧縮すると必ず入るもので、並べると選択肢が実際の倍になります)。
しおり
⌘B で今の行に印。⌘; で次のしおりへ、⇧⌘; で前のしおりへ。印は行番号の左に出ます。
調査は往復します。 絞り込んで見つけた行から本文へ飛び、周りを読み、また戻る。戻り先を頭に置いておけるのは 1 つか 2 つで、それを超えると行番号をメモに書き写すことになります。
検索で言い表せる戻り先なら、⌘G のほうが速い。しおりが埋めるのは検索語にできない戻り先です ——「4000 行を眺めていて引っかかった 5 行」のように、共通する文言も時刻も無いもの。
セッション内だけで、ファイルには何も書きません。
変わらないこと
⌘; を使わなければ、これまでと同じです。パイプも圧縮も、渡さなければ動きません。