タグ

Loggingに関するluccafortのブックマーク (4)

  • Goのロギングライブラリから見たゼロアロケーション - Speee DEVELOPER BLOG

    はじめに UZOUという広告配信プラットフォームでバックエンドエンジニアをしている@muroon01です。 Goのロギングライブラリであるzerolog, zapは(使用法によりますが)ゼロアロケーションであると言われています。 そこでゼロアロケーションのロギングライブラリとは一体どのようなつくりなのか、またGoのソースをゼロアロケーションにする方法について記述していきたいと思います。 ゼロアロケーションとは? (メモリ)アロケーションとはプログラムが動作するのに必要なメモリの割り当てを意味しており、スタック領域へのもの(静的アロケーション)とヒープ領域へのもの(動的アロケーション)が存在します。 スタック領域へのメモリの割当は割当サイズおよび確保・解放されるタイミングがプログラムの記述時に静的に決まります。 一方、ヒープ領域は宣言時にメモリの最大割当サイズを指定せずに、プログラム実行時に

    Goのロギングライブラリから見たゼロアロケーション - Speee DEVELOPER BLOG
    luccafort
    luccafort 2022/07/14
    面白かった。ログくらいヘビーに使われるものだとアロケーションのコストが馬鹿にならないというのは想像できるので有名どころのロガーライブラリを調べてみたい気持ちになった。
  • logrotateの設定とファイルのアクセスモードについて

    忙しい人のために先にまとめログファイルのopen時のアクセスモードは os.O_WRONLY|os.O_APPEND|os.O_CREATE を指定するlogrotateの設定には nocreate を渡すlogrotateではファイルをmvした後に行う処理が書けるので、そこでアプリケーションに対してシグナルを送ることでlogrotateの処理を実装できるfluentdはログのローテートを頑張って検知している ファイルディスクリプタについてファイルを open するとファイルディスクリプタを得られます。ファイルに書き込む際にはファイルディスクリプタ経由で書き込みを行います。 Linuxシステムプログラミング 23pをちょっと長めに引用します。 ファイルを読み書きする前にはオープンする必要があります。カーネルはオープンしたファイルをプロセスごとに管理しており、これをプロセスのファ

    luccafort
    luccafort 2018/03/05
    logrotate便利なコマンド以上の印象を持っていなかったので大変勉強になった。logrotateの振る舞いとか意識したことなかったわ。
  • 開発者が運用を経験すべき一つの理由 | DevelopersIO

    はじめに 小室です。2017年も最後の日になりました。 ここ最近は読書によるインプットが少なくなったことによって、文章の質が自ら目を背けたくなる程度に低下していたため、仕事納めから数日はひたすらを読む生活をしていました。まだまだインプットが足りていないので充電が完了していないのですが、年末恒例になったエントリーを書かないことが自分の中でモヤモヤとして残っていたので、重い腰を上げて文章を書いてみようと思います。 ここ数年は珍しく1つのプロジェクトにつきっきりで設計/実装から運用までを通して担当しています。 *1特に運用を担当するようになって多くを学んだ一年でした。もはや設計・実装者が一人も残っていないアプリケーションのメンテナンス、改修に関わったり、インフラ側とアプリケーション側の狭間を埋めるように動くためにAWSのサービスについて格的に勉強をしたりするなど、1アプリケーションエンジニア

    開発者が運用を経験すべき一つの理由 | DevelopersIO
    luccafort
    luccafort 2018/01/04
    ログはどこまで出すのがいいのか、出さないべきか?というバランス感覚が難しい。特にトラフィックが多いサービスほどトレースしたいがその分ログが肥大化してしまうし…みたいな。難しい。
  • 良いデバッグログはプロジェクトの資産である

    http://eventdots.jp/event/591027 (2016-07-30追記:Rails 5.0からproductionでもDEBUGがデフォルトらしいです) (2020-09-23追記:https://github.com/rails/rails/pull/39707 INFOに戻りそう)

    良いデバッグログはプロジェクトの資産である
    luccafort
    luccafort 2016/08/01
    バグが出てからログを入れたのでは遅い、なるほど確かに。ただこの手のログの出力はある程度ハンドリングしたさあるので出力レベルに関してはある程度いじれないとつらい。
  • 1