おはこんばんちは。 尾藤 a.k.a BTO です。 先日弊社のとあるサービスで、ログが溢れてしまいサービスが正常に稼働しなくなった事がありました。 こういう時は、ログを削除してディスクスペースを確保すればいいのですが、ログの削除の仕方を間違ってしまうとサービスの再起動に時間がかかってしまいます。そこで今回はログの削除の方法について書いてみます。 失敗例 ログが溢れた時の、ログ削除の失敗例はだいたいこんな感じになります。 ログが大量に書き込まれてディスクフルになる 他のデータが書き込めなくなって、サーバが正常に動作しなくなる rmコマンドでログファイルを削除する dfコマンドで確認しても、あれ? 減ってない。なんで? デーモンを再起動(sudo service foo restart) あれ? 戻ってこない。なんで? kill -KILLで無理矢理プロセスを落とそうとする あれ? プロセス
たぶん逆引きが無いから探せないのかなと思ったので path/filepath にどういう機能があるのか書いておく。 filepath.Join 使って下さい。 / “Go言語でクロスプラットフォーム的にパスとファイル名を結合するには? | 非IT企業に勤める中年サラリーマンのIT日記” https://t.co/ehXCf0u8X9 — 自称mattn (@mattn_jp) October 24, 2017 パスからファイル名を得る filepath.Base を使う。 package main import ( "path/filepath" ) func main() { println(filepath.Base("C:/foo/bar")) } この場合 bar が表示される。 パスからディレクトリ名を得る filepath.Dir を使う。 package main impor
git diffを見やすくする git diff --color-words で差分を小さく表示する 通常のgit diffは行単位なので、例えば変数名を一括変更した場合見づらいです。 --color-wordsを指定すると記号やスペースで区切られた単語単位でのdiffを表示できます。gitの設定は不要です。 より細かな表示のカスタマイズも可能です。man git-diffで--word-diffを検索してみてください。 ※ただし、変更が複雑な場合は、通常のgit diffのほうが見やすいこともあります。 .gitattributesを設置してもっと小さく表示する .gitattributesファイルを設置することで、言語文法に基づいて変数名、関数名といった単位でdiffを表示できます ファイル設置後にgit diff --color-wordsとすると、下記のようにさらに小さく表示できま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く