並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 267件

新着順 人気順

ロギングの検索結果1 - 40 件 / 267件

  • ロギングベストプラクティス - kawasima

    #翻訳 https://www.scalyr.com/blog/the-10-commandments-of-logging/ CC BY 4.0 @Brice Figureau 1.自分でログの書き出しをしない printfをつかったり、ログエントリを自分でファイルに書き出したり、ログローテションを自分でやったりしてはいけない。運用担当者にお願いして、標準ライブラリやシステムAPIコールを使うようにしよう。そうすれば、実行中のアプリケーションが他のシステムコンポーネントと適切に連携して、特別なシステム設定なしに適切な場所またはネットワークサービスにログを記録できるようになる。 ロギングライブラリを使いたければ、特にJavaの世界にはLog4j, JCL, slf4j, logbackなど多くのものが存在する。私はslf4jとlogbackを組み合わせて使うのが好きだ。とてもパワフルで、設

      ロギングベストプラクティス - kawasima
    • fluentd を利用した大規模ウェブサービスのロギング

      YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web serviceKazuho Oku

        fluentd を利用した大規模ウェブサービスのロギング
      • ロギングにおける十戒 | Yakst

        どのように何をロギングするかを知ることは、ソフトウェアエンジニアが解決すべき最高に難しいことの一つだ。アプリケーションのログを拡張する手助けとなるのがこの「十戒」だ。 新年の私のブログにようこそ。監視とログのモニタリングについてのParisのdevopsメーリングリストでのスレッドに返信を書いた後、長らく心に留めていたブログ記事を思い出した。 このブログ記事は、私のOpsとしての顔をもって、主に開発者向けに書いた。 どのように何をロギングするかを知ることは、ソフトウェアエンジニアが解決すべき最高に難しいことの一つだ。多くの場合、これは予言をするのと同じようなことだからだ。トラブルシューティング中にどんな情報が必要かを知るのはとても難しい。それが、Opsエンジニアの大きな助けとなるよう、あなたのアプリケーションのログを拡張する手助けとなるこの「十戒」を望んだ理由だ。 1. 自分でログを書くべ

          ロギングにおける十戒 | Yakst
        • Goのロギングライブラリ 2021年冬 - moriyoshiの日記

          この記事はPySpa Advent Calendar 2021の14日目のエントリーとして書かれました。昨日のエントリーは冷凍食品でウキウキ引きこもり生活 でした。ちなみに私も70ℓの冷凍庫を購入しましたが本当にライフチェンジングでした。 総論: なぜログが必要か 可観測性 たとえ目的は自明でも、その動作までが自明なアプリケーションというものはほぼ存在しません。現実の世界のアプリケーションというものは、動作パラメータだったり実行環境だったり、起動時点でのさまざまな要因によって挙動を変えるものだからです。そして、そうしたアプリケーションにはライフサイクルというものがあります。ここでいうライフサイクルは、アプリケーションの処理が実行されるにつれ、アプリケーションの内外との情報のやりとりで生じる大局的な状態の変化のことです。アプリケーションが並行処理を行うようなものであれば、個々の並行処理の単位

            Goのロギングライブラリ 2021年冬 - moriyoshiの日記
          • ウノウラボ Unoh Labs: PHPによるテキストファイルへのロギング

            yamaokaです。 PHPでwebアプリケーションを作成するとき、 皆さんはロギング(ログの出力)をどうされているでしょうか。 今回は、テキストファイルへロギングする方法をいくつか紹介したいと思います。 error_log関数 syslog関数 PEAR::Log log4php Zend_Log error_log関数 PHPでは、標準の関数として error_log関数が用意されています。 使い方はとてもシンプルです。2番目の引数に「3」を指定することで、 テキストファイルにログを出力することができます。 error_log('message', 3, '/var/tmp/app.log'); syslog関数 また、syslog関数も 標準で用意されている関数です。syslog経由でテキストファイルにログを出力することができます。Windowsの場合は、イベントログでエミュレートさ

            • ソースに一行追加するだけですべての HTTP 通信をロギングするモジュールを書いた #golang - 詩と創作・思索のひろば

              こちらです。Perl でいうと Devel::KYTProf に性質がちかい。 motemen/go-loghttp · GitHub (GoDoc) 使用例 たとえばこういうコードに… package main import ( "io" "log" "net/http" "os" ) func main() { resp, err := http.Get(os.Args[1]) if err != nil { log.Fatal(err) } io.Copy(os.Stdout, resp.Body) } % go run main.go http://example.com/ <!doctype html> ... 一行追加すると: package main import ( "io" "log" "net/http" "os" _ "github.com/motemen/go-lo

                ソースに一行追加するだけですべての HTTP 通信をロギングするモジュールを書いた #golang - 詩と創作・思索のひろば
              • AWS Startup Tech Meetup #3: かんたんコンテナロギング選手権

                コンテナでログをどう取得すればいいの?そもそもどういうログがあるのか? ログの取得パターンから活用方法まで、 @prog893 が選定のためのヒントとサンプルアーキテクチャで紹介します。

                  AWS Startup Tech Meetup #3: かんたんコンテナロギング選手権
                • AWSサーバーレス環境でのロギング - Qiita

                  はじめに 最近、プロジェクトで運用回りの設計を行う機会があったので、その際に学習したことをまとめました。AWSのLambdaなどを使っている方でロギングに興味があるけど、まだ良く理解できていないという方のためになれば幸いです。ここではサーバレス環境でのロギングの基本について解説しています。 また、監視に関した記事も投稿していますので、そちらも興味がございましたら一読下さい。 ログ戦略 マイクロサービスの場合、ログ戦略がとても重要になってきます。 マイクロサービスは複数のサービスから構成されているため、ログ戦略を間違えると調査が困難になり得るからです。ただし、AWSの場合は何でもかんでもログを出力するのは間違いです。標準的なログ出力機能を備えているサービスも多いため、重複が多くなりコスト増につながります。つまり、適切なログのみを出力する必要があります。 Lambdaのログ戦略 開発環境と本番

                    AWSサーバーレス環境でのロギング - Qiita
                  • #java_ja で例外とロギングについて勉強会をやるというのでいってきた&飛び込みLTやった&運用の視点から見たアプリケーションのログについて - たごもりすメモ

                    LOG.debug("nice catch!") - connpass 2012/06/27 java-ja 『LOG.debug("nice catch!")』#java_ja #javaja - Togetterまとめ blogエントリを書くまでがjava-jaだと聞いたのでとりあえず書く。超まとまってません。各スピーカーの話の内容については他の人のblogに(たぶん)書いてあるのでそっちを見るとかTogetterを眺めるとかすればよいのではないでしょうか。 主催のみなさま、および会場提供のGREEさま、ありがとうございました。そういえばGREEでの勉強会って初めて参加した気がする。六本木ヒルズの入館、だいぶ簡単になりましたね。 いってきた どっちかというとアプリケーションのコード書く人が多かったんですかね。という感じで、アプリケーションコードからいかにして例外を投げるか、それをどのよ

                    • 複雑さに潜り込む - 大規模PHPアプリケーションにおける例外・モニタリング・ロギング - すずけんメモ

                      みなさん、PHP書いてますか?ここ2ヶ月くらいPHPも書いていたのでその話を書きます。 この記事はVOYAGE GROUP techlog / Advent Calendar 2016の記事です。 例えば以下のような話に身に覚えはありませんでしょうか。 例外がどこかで握りつぶされており、例外的状況なのにエラー表示がまちまち。レスポンスステータスも一貫性がない。エラーログが適切に出ていない。 エラーログ出力用コードがいろんなところで散乱している。エラー文字列整形のための適当なヘルパメソッドがクラスごとに実装されている。 エラーごとにエラー表示のためのメッセージを設定するのが面倒になり、「システムエラーが起きました」とだけ表示されるようになってしまった。 例外ハンドリング周りのコードは考えるのが面倒なのでコピペだらけになっている。 オブジェクトの依存関係がクラスのプロパティに大量に埋め込まれて

                        複雑さに潜り込む - 大規模PHPアプリケーションにおける例外・モニタリング・ロギング - すずけんメモ
                      • FluentdとGrowthForecastを使って自分の行動をロギング・可視化する - すぎゃーんメモ

                        おそらくはそれさえも平凡な日々: もにかじでオレオレ監視ツールについて話してきました GrowthForecast.plで自分ロギングしてみた - by edvakf in hatena の記事のように、FluentdやGrowthForecastを使ったロギングって面白そうだなーと思って自分でもやってみた。 アプリケーション毎のアクティブな時間を取る まず考えたのはこれ。キーイベント発火回数ほど細かくなくても、「アクティブにしている時間の割合」が取れたらそれはそれで良いかな、と。 1秒ごとにアクティブなアプリを調べてロギングしていく。Mac OS Xにおいてアクティブなアプリケーションを調べるならAppleScriptが簡単。 name of (info for (path to frontmost application)) これだけでアクティブにしているアプリケーション名が取れる。

                          FluentdとGrowthForecastを使って自分の行動をロギング・可視化する - すぎゃーんメモ
                        • fluentd を使った大規模ウェブサービスのロギング - 2nd life (移転しました)

                          先月行われた Fluentd meetup in Japanというイベントで発表してきました!一ヶ月前だけどエントリーにするの忘れていたので、今更ながらエントリーに。 fluentd を利用した大規模ウェブサービスのロギング View more presentations from hotchpotch fluentd、クックパッドではすでに100台以上のサーバに入れて各種ログを集約してますが本当に便利で。あとログ以外も最近 fluentd 経由で投げ始めたので、その辺も近々エントリーにできたらなーと思います。

                            fluentd を使った大規模ウェブサービスのロギング - 2nd life (移転しました)
                          • 徒然なるままにBlog - Apacheチューニング: ロギングを高速化する

                            あまり知られていません(と思われる)がApache2(2.0.41以降)にはアクセスログの書き出しをメモリにバッファリングし高速化させるという機能があります。 今回はその機能を有効にするとどれぐらい速くなるのか調べてみました。 設定方法はhttpd.confに BufferedLogs On と追加するだけでログのバッファリングが有効になります。 以下ベンチマークを取った結果です。 バッファリング無効984 Request/Sec バッファリング有効1033 Request/Sec (参考)ロギング無し1055 Request/Sec ※小さなhtmlファイルに対してab -c 100 -n 1000を何度か繰り返した結果の平均です。 体感では違いを感じられないとは思いますがベンチを取るとおよそ5%程Request per secondの値が上がっていました。 静的なファイルが

                            • あなたの知らない
データベースのロギングの世界 / logging queries

                              builderscon tokyo 2018 の発表資料です。 https://builderscon.io/tokyo/2018/session/87e13506-2f80-4fae-af9c-2421c7dbb460 ※発表後に分かったこと、教えていただいたことにより、発表時の資料から若干の変更を加えています

                                あなたの知らない
データベースのロギングの世界 / logging queries
                              • 定期実行スクリプトの綺麗なロギング3選 - カイワレの大冒険 Third

                                オリンピックの流れに乗れてない@masudaKです。 職業柄かちょくちょくスクリプトを書くことはあるのですが、やはり色々自分で書いたり人のを見たりしてるうちに、この実行履歴綺麗だなーと思うことが多々あります。 今回は、そう思える対象のなかでも、「定期実行スクリプト」の「出力」を扱ってみたいと思います。 「定期実行スクリプト」というのは、バッチ処理だったり、何か必要に応じて叩かれるスクリプトで、具体的にはバックアップとか集計とか、一日に最低一回は叩かれるようなスクリプトです。cronやJenkinsで叩かれるような類ですかね。そのようなスクリプトの「出力」について書いてみたいと思います。 出力は標準出力であれば、tailfコマンドだったり、Jenkinsのビルドのコンソール出力で見られるようなもの。ロギングされてるのであれば、それと同様に追えるようなものとします。 以下に書くのはあくまで今の

                                  定期実行スクリプトの綺麗なロギング3選 - カイワレの大冒険 Third
                                • オープンソースのロギング・サービス「log4net」を使う ― @IT

                                  オープンソースのロギング・サービス「log4net」を使う:連載:VBで実践! 外部コンポーネント活用術(1/4 ページ) 連載目次 Apache Logging Serviceプロジェクトのlog4net アプリケーションの開発では、コーディングが完了して動作確認をしたらきっぱり開発者の手を離れる……などということはほとんどないでしょう。コンシューマ向けのパッケージ作成であれば入念な動作テストが行われた後にリリースということになるでしょうが、特に社内で使用するアプリケーションの作成では、配布後にいろいろな修正要求や「うまく動かないんだけど……」といったリクエストを受け取ることが多々あります。 ユーザーからの「うまく動かない」という報告があった場合、「動かない」状況をきちんと(開発者が納得できるような)説明をしてもらえることは(まずほとんど)期待できません。そのためアプリケーションにログ機

                                    オープンソースのロギング・サービス「log4net」を使う ― @IT
                                  • Javaのロギングライブラリの歴史と現状をふんわり把握する(初学者向け) - Qiita

                                    かつて、Log4jというロギングライブラリがありました。 最強でした。1999年のお話です。 ロギングの大切さとLog4jの素晴らしさが見直され、Java標準にjava.util.loggingというAPIが追加されました。2002年のお話です。 java.util.loggingはLog4jを参考に作られましたが、ところどころ使いづらかったため、「標準」という武器をもってしても、Log4jに置き換わることはできませんでした。そのため、Javaの世界には2つのロギングライブラリが残ってしまいました。 Maven1.0が2004年にリリースされ、人々はOSSライブラリを組み合わせてアプリケーションを作るようになりました。 ところが、ロギングライブラリが2つあったため、Log4jを使っているライブラリと、java.util.loggingを使っているライブラリが混在してしまい、アプリケーション

                                      Javaのロギングライブラリの歴史と現状をふんわり把握する(初学者向け) - Qiita
                                    • Fluentdのロギング - Qiita

                                      Fluentdの公式ドキュメントにloggingのページがあるんですが,まだ英語しかなく,運用の話を聞いてるとここに書いてあることで解決出来るケースがいくつかあったので,とりあえず日本語で記事にしておきます. プラグイン毎のログレベル 昔のFluentdはグローバルに一つしかログレベルを設定出来なかったんですが,今ならプラグイン毎に設定出来ます.プラグインが対応している必要がありますが,まぁ今時のプラグインや広くつかわれているやつはほとんど対応していると思います. in_tailプラグインはログにマッチしない行があったらwarnでメッセージを出しますが,そういうbrokenな行があることが分かっていてログを出さずに無視して欲しい,というような場合に有効です. その他にも,あるプラグインだけデバッグモードで走らせたい,みたいなことが出来るようになります. ログのスタックトレースの抑制 Flu

                                        Fluentdのロギング - Qiita
                                      • MySQLに投げられたすべてのSQLクエリをロギングする - モヒカンメモ

                                        概要 クエリビルダやORMが生成するクエリを確認したいなどの理由で、MySQLに投げられたクエリを確認したくなることがある そういうときは、MySQLのクエリログ (general_log) と言う設定をONにすることによって、すべてのクエリをログに吐かせることができる dev.mysql.com 5.2.3 一般クエリーログ 一般クエリーログは、mysqld の実行内容の一般的な記録です。サーバーは、クライアントが接続または接続解除したときに情報をこのログに書き込み、クライアントから受け取った各 SQL ステートメントをログに記録します。一般クエリーログは、クライアント側でエラーが疑われるとき、クライアントが mysqld に送信した内容を正確に知りたい場合に非常に役立つことがあります。 やってみる 1. 現在の設定を確認する mysql> select version(); +----

                                          MySQLに投げられたすべてのSQLクエリをロギングする - モヒカンメモ
                                        • 例外処理とロギングのベストプラクティス

                                          はじめに システム開発において例外処理は重要なポイントですが、あまりに軽視されているのが現状ではないでしょうか。本稿では、これまでの著者の開発経験の中から培った汎用的な手法を説明します。 この記事は「美しい設計」ではなく「現実的な設計」、現場に適用できる「できるだけ手間の少なく、汎用的な設計」を目指しています。 対象読者 J2EE開発者・アーキテクト。特に業務システムの開発現場の方が対象です。 必要な環境 概念の説明が中心ですので、開発環境は必要ありません。 エラーの分類 実装時に考慮すべきエラーは2つに大別できます。 想定内でトランザクションの実行開始前にチェックするエラー。主に入力エラー。 異常な状態としてトランザクションの続行が不可能なエラー(例外)。 前者については、例外を使うべきではありません。入力チェックエラーを表現するには、ステータスコードを使うべきです。理由は次のとおりです

                                            例外処理とロギングのベストプラクティス
                                          • daemontoolsによるロギングとプロセス監視(1/3)

                                            syslogを使ったロギングにはいくつかの欠点がある。そこで、ロギングやプロセス監視を行ってくれるdaemontoolsを導入しよう。これにより、システムをより強力なものにできる。 ログは、サーバの状態やプロセスの稼働状況を知るうえで欠かせない情報源です。管理者がコンソールに向かっていない間に発生した障害も、ログを頼りに復旧したり原因を探って再発を防ぐ手段を講じることができます。新たにインストールしたツールがうまく動作しない場合にも、ログを見ればどこの手順で間違ったのか、どこがうまくいっていないかを知ることができます。 Apacheをはじめとする最近のツールは、標準のコンフィグレーションでロギングが有効になっています。「ApacheによるWebサーバ構築」第14回 ログローテーションとAnalogの導入では、Apacheのログを分析ツール「Analog」を使用してグラフ化する方法が紹介され

                                              daemontoolsによるロギングとプロセス監視(1/3)
                                            • Googleのロギングライブラリgoogle-glogを使ってみる - moratorium

                                              Googleのロギングライブラリgoogle-glogを使ってみる 2008-10-15 (Wed) 15:23 Google OSS “google glog”で探せないgoogle-glogを軽く使ってみました。Googleからオープンソースで公開されたC++向けのロギングライブラリです。以下のエントリが参考になります。 C++ のプログラムのデバッグを楽にする方法 google-gflags 1.0と、google-glog 0.1をダウンロードしてインストールします。今回はgoogle-gflagsを使用する場合についてのみ記述します。また、glogのマニュアルに一通り目を通してから読まれると良いかと思います。 まずはとにかく動かしてみます。 #include int main(int argc, char **argv) { google::InitGoogleLogging(a

                                              • monによるMySQLのデッドロック検知とロギング - FAT47の底辺インフラ議事録

                                                更新が激しいDB(MySQL)でInnoDBのロック競合が発生し、アプリケーションサーバが詰まる状況が発生してしまいました。 障害監視はmonというアプリケーションで行なっているのですが、 今回はこのmonを使ってMySQLデッドロックの検知とロギングを行いたいと思います。 monについては下記の資料をご参照ください。 Mon, Muninによる楽々監視生活 デッドロック解析は下記サイトのSQLを利用しています。 MySQL InnoDBにおけるロック競合の解析手順 前提 ・MONのサーバは既に構築済みであること ・DBサーバはMySQL5.5であること(MySQL5.1+InnoDB pluginでも可) 〜〜〜 以下、監視対象のDBサーバにて作業 〜〜〜 SNMPインストール yum install net-snmplockを検知するスクリプト作成 vim /usr/local/sbi

                                                  monによるMySQLのデッドロック検知とロギング - FAT47の底辺インフラ議事録
                                                • k8sでロギングってどんなやり方があるんかな? - Mitsuyuki.Shiiba

                                                  と思ってここを読んでみたら面白かった。 kubernetes.io 理解したことをざっくりと書くと コンテナレベルからクラスタレベルへ Dockerからログを出力したとして、コンテナがクラッシュしたりノードが落ちたりしたときでもログは見られるようにしときたいよね。だから、ログの保存先は別にしといて、コンテナとかノードとかとは違うライフサイクルで管理したい。てのがクラスタレベルロギングって呼ばれてるコンセプト。 クラスタレベルロギングの前に基本とノードレベルの紹介から。 k8sのロギングの基本 コンテナから stdout とか stderr に出しとくと kubectl logs で見られる。 ノードレベルのロギング (Image from https://kubernetes.io/docs/concepts/cluster-administration/logging/ ) コンテナから

                                                    k8sでロギングってどんなやり方があるんかな? - Mitsuyuki.Shiiba
                                                  • Googleが新しいJavaロギングFrameworkをリリース

                                                    「FinOps、アプリケーション単位の経済性、クラウドコストの最適化について、ロワ・ラヴホン氏語る」 このエピソードでは、Finoutの共同設立者兼CEOであるRoi Ravhon氏が、InfoQポッドキャストの共同ホストであるDaniel Bryant氏と対談し、FinOpsの出現と業界の採用について議論した。この対談では、FinOpsを採用するメリット、クラウド・コストについてもっと知りたいと考えている組織の典型的な道のり、実装を成功させるために必要な様々な文化やツールといったトピックが取り上...

                                                      Googleが新しいJavaロギングFrameworkをリリース
                                                    • 簡単に生産性を上げる「リアルタイムロギング」メソッド:発想七日!:オルタナティブ・ブログ

                                                      たとえば「報告資料の最終化」という作業に2時間を充てていたとしましょう。 ところが思ったような成果が挙がらない。その原因を分類すると、 [こだわり] 細部に、妙にこだわってしまったために全体を見直す時間がなかった [中断] メールや電話などで思考が中断されたために何をしていたか忘れてしまった [拡散] 思考があらぬ方向に流れていってしまい、正味の作業時間が減ってしまった という感じでしょうか。我が身を振り返ってみると: 「こだわり」 ― 特定のスライドや文章が気になってしまい、そこをちょこまか直すことに時間を使ってしまう。結局全体の品質を上げられないまま納期に…。 「中断」 ― ひとりで作業をするときはメーラーも落として電話にも出なかったり(!)できますが、チームで作業をしているときは、特にマネジャー役のときは、そうもいきません。 「拡散」 ― 恥ずかしながらこれが一番多いかも。報告書を書

                                                        簡単に生産性を上げる「リアルタイムロギング」メソッド:発想七日!:オルタナティブ・ブログ
                                                      • 決済トランザクションの監視におけるElastic Stackの活用 ~アプリケーションロギング/トレーシングの可視化~ / Elastic Stack for monitoring payment transactions - Speaker Deck

                                                        Transcript 決済トランザクションの監視における の活用 アプリケーションログ/トレースデータの可視化 ペイメントサービス株式会社 アプリケーション開発者 髙野 はいね 自己紹介 決済代行システム の開発に従事 年に ペイメントサービス株式会社に新卒入社 主な業務 ・決済代行システム開発 ・運用改善 ソフトバンク携帯ユーザー向けの 「ソフトバンクカード」のカード発行・ 運営をしています。 ソフトバンクカードは、 Visa加盟店 で利用できるプリペイドカードです。 ご利用金額に応じて Tポイントが貯 まります。 カード発行業務 決済代行 EC運営事業者さま向けにオンライン決済 事業を運営しています。豊富な決済手段 をまとめてご提供しています。 カード加盟店業務 Visa、Mastercard、UnionPay(銀聯)のメン バーシップライセンスを保有しており、各ブラ ンドのアクワイア

                                                          決済トランザクションの監視におけるElastic Stackの活用 ~アプリケーションロギング/トレーシングの可視化~ / Elastic Stack for monitoring payment transactions - Speaker Deck
                                                        • 「ロギングにおける十戒」を読んで - ぶらっ記ぃ

                                                          たまたま検索に引っかかった記事が面白そうだったので読んでみた感想文。 yakst.com 1. 自分でログを書くべからず printfを使ったり、自分でファイルにログエントリを書き込んだり、あるいはログローテートを手動でやってはいけない。オペレータにお願いして、一般的なライブラリを使うか、システムAPIコールを使ってやろう。 自分でログ機構を実装しないでエコシステムに乗りましょうという話。 最近はJVMアプリのロギング周りを追っているけど、確かにslf4jのインターフェイスと実装を分ける設計は合理的に感じる。 いま関わっているプロジェクトでも自作ロガーが使われており、エコシステムに乗れなくて辛い思いをしている… 2. 適切なレベルでログを出力すべし 当たり前のようで意外と守れていないことが多い気がしている。 最近自分が見たのは、バッチ処理の開始・終了をWARNレベルで出力しているところ。

                                                            「ロギングにおける十戒」を読んで - ぶらっ記ぃ
                                                          • Goのロギングライブラリから見たゼロアロケーション - Speee DEVELOPER BLOG

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

                                                              Goのロギングライブラリから見たゼロアロケーション - Speee DEVELOPER BLOG
                                                            • 例外処理とロギングのベストプラクティス:CodeZine

                                                              はじめに システム開発において例外処理は重要なポイントですが、あまりに軽視されているのが現状ではないでしょうか。本稿では、これまでの著者の開発経験の中から培った汎用的な手法を説明します。 この記事は「美しい設計」ではなく「現実的な設計」、現場に適用できる「できるだけ手間の少なく、汎用的な設計」を目指しています。 対象読者 J2EE開発者・アーキテクト。特に業務システムの開発現場の方が対象です。 必要な環境 概念の説明が中心ですので、開発環境は必要ありません。 エラーの分類 実装時に考慮すべきエラーは2つに大別できます。 想定内でトランザクションの実行開始前にチェックするエラー。主に入力エラー。 異常な状態としてトランザクションの続行が不可能なエラー(例外)。 前者については、例外を使うべきではありません。入力チェックエラーを表現するには、ステータスコードを使うべきです

                                                              • cronolog で Apache ログをロギング時にファイル分割

                                                                Apache のログの管理って意外と面倒です。通常は Apache 付属の rotatelogs で日時でログローテートして仁別に切り出されたログを圧縮して保存なんて運用をされているかと思います。例えば、全ログ + 日別のログを保持するなら CustomLog /var/logs/access.log common TransferLog "|/usr/local/apache/bin/rotatelogs /var/logs/access.log 86400"

                                                                • go言語におけるロギングについて | さにあらず

                                                                  僕は Java 方面に慣れていますのでslf4j(Logback)やlog4j2の様なロギングライブラリがあると扱い易いなぁ…と思う次第です。 まとめ#例によって結論から書くと XML で設定する事に耐えられる ならseelogがオススメ。 CLI で指定出来る程度の設定が出来れば良いなら、公式リリースなglogがオススメ。 標準のlogパッケージについて#まず、僕の開発環境は Windows7 ですので、log/syslog を直接使うようなコードは避けたいのです。 加えて、コードをあまり変更せずに出力先や出力内容を変更したいのですけども、その為の標準的な方法は機能としてライブラリ内に組込まれていません。 テスティングフレームワークの時も同様に感じましたけども、go 言語のコアライブラリは本当に一番下の足回りがあるのみです。 例えば、設定可能な項目はこれだけです。抜粋すると、 時間や日付

                                                                    go言語におけるロギングについて | さにあらず
                                                                  • neue cc - Http, SQL, Redisのロギングと分析・可視化について

                                                                    改善は計測から。何がどれだけの回数通信されているか、どれだけ時間がかかっているのか、というのは言うまでもなく重要な情報です。障害対策でも大事ですしね。が、じゃあどうやって取るの、というとパッとでてくるでしょうか?そして、それ、実際に取っていますか?存外、困った話なのですねー。TraceをONにすると内部情報が沢山出てきますが、それはそれで情報過多すぎるし、欲しいのはそれじゃないんだよ、みたいな。 Grani←「謎社」で検索一位取ったので、ちょっと英語表記の検索ランキングをあげようとしている――では自前で中間を乗っ取ってやる形で統一していて、使用している通信周り、Http, RDBMS, Redisは全てログ取りして分析可能な状態にしています。 HTTP HttpClient(HttpClientについてはHttpClient詳解を読んでね)には、DelegatingHandlerが用意され

                                                                    • Goでセキュアにロギングするzlog

                                                                      TL; DR Goで秘匿値をログに出力しないようにする zlog というロガーを作りました。 以下、経緯や使い方の説明です。 背景:サーバーサイドにおけるロギングと秘匿値の問題 Webサービスを含む多くのサーバーサイドのサービスでは、サービスの挙動に関するログを出力・記録しておくのが一般的です。継続的にログを出力しておくことで、トラブルシューティングやデバッグ、セキュリティインシデントの対応や監査、性能改善の手がかりなどに活用することができます。ログに含まれる情報が多いほど問題を解決するための手がかりが増えるため、(限度はあるものの)なるべく多くの情報を掲載する、あるいは設定によって情報量を増やせるようにしておくと便利です。 しかし一方で、サーバーサイドで出力するのは望ましくない情報もあります。 認証に利用される情報:パスワード、APIトークン、セッショントークンなど、それを使うことで別の

                                                                        Goでセキュアにロギングするzlog
                                                                      • 【C#】明日から使える ASP.NET Core ロギング術! - ねののお庭。

                                                                        登壇版 ConsoleFormatter HttpLogging ConsoleFormatterOptions.IncludeScopes W3C Trace Context ExceptionHandler DbDataSource HttpClientFactory まとめ References 登壇版 .NET ラボ 2023/07/22 で発表した資料です。 スライドはこちら。 スライドはアニメーション豊かなので、スライドと本投稿合わせながら見るといいかもです。 登壇のアーカイブはこちら。 30 分程度です。 ConsoleFormatter ログはだいた標準出力、まぁコンソールに出力しますよね。 そしてコンソールにログを出力するといっても、当然ながら複数のフォーマットがあります。 C# で現在ロガーとしてデファクト的に使われている Microsoft.Extensions.Lo

                                                                          【C#】明日から使える ASP.NET Core ロギング術! - ねののお庭。
                                                                        • サポート効率を上げるためのロギング環境構築

                                                                          iOSDC Japan 2017 2017/9/17 (日) https://iosdc.jp/2017/node/1422

                                                                            サポート効率を上げるためのロギング環境構築
                                                                          • 死活監視、ロギング、メトリクス――Kubernetesと監視の話

                                                                            第1回~第4回で、Amazon Web Services(AWS)が提供するマネージドKubernetesサービス「Amazon Elastic Kubernetes Service(EKS)」を用いた「Kubernetes」環境の構築や、Kubernetesを利用したアプリケーションの公開までを解説しました。この2つの能力があれば、ITサービスを通じてユーザーに価値を提供することができます。パン屋さんで例えるとパン(アプリケーション)を店頭で並べられるようになった(公開)といったところでしょうか。 パンを焼いて店頭に並べる一連の作業は、もちろん1回で終わるものではなく、毎日繰り返すものです。毎日繰り返すには、パンを焼くための道具や機械に不具合がないように定期的に点検して、機械が不調になったときはすぐに修理したり、一時的に代用できるものをあらかじめ準備しておいたりするなどの対策が必要です。

                                                                              死活監視、ロギング、メトリクス――Kubernetesと監視の話
                                                                            • [アップデート]AWS Lambdaでロギング設定を制御できるようになりました | DevelopersIO

                                                                              こんにちは、つくぼし(tsukuboshi0755)です! AWS Lambdaのロギング設定を制御できるようになったというアップデートがあったので、今回試してみます! 何が嬉しいか 今までCloudWatch Logsに対するLambdaのロギング設定は、以下がデフォルトで固定され、変更できないようになっていました。 ログ形式:Text ログレベル:なし ロググループ名:/aws/lambda/<関数名> ※なおログ形式については、今までもPowertoolsを使用すればJSONに変更可能でした。 上記3点について、今回のアップデートによりLambdaのコンソールまたはAPIを通じて柔軟に設定できるようになりました! 試してみる それではどのようにログ設定を変更できるようになったか試してみましょう。 公式では以下のブログで使い方が紹介されています。 上記のブログはLambdaのランタイム

                                                                                [アップデート]AWS Lambdaでロギング設定を制御できるようになりました | DevelopersIO
                                                                              • ウノウラボ Unoh Labs: PEAR::DBをオーバーロードして手軽にロギングとプロファイリングする

                                                                                ウノウに入社してからすっかりエンゲル係数と体重が増加して困っているjokagiです. このまま年を越すのは微妙なので効果的なダイエット方法を教えてください. ということでエントリをはじめたいと思います. さて今回はよくある「データベースのアクセスログ取りたいね」とか「プロファイルを楽に取りたいね」という要求をふとひらめいたアイデアでお手軽に実現してみました. まず.いきなりすみませんが案件的にテスト実装した環境がPHP 4を使用していたため,この実装はまだPHP 5以上での動作は確認していません. また,今更メンテナンスモードで消える運命のPEAR::DBを扱うのかよ!!という方もいらっしゃると思いますが,とりあえず気づかなかったことにしてください. 基本的で最低限のPEAR::DBの使い方 PEAR::DBを丁寧に説明してもきりがないのでざっくりだけ. 下記はMySQLにつないであるテー

                                                                                • Mac OSXのファイル変化をロギングする·FSLogger MOONGIFT

                                                                                  Mac OSXにはSpotlightと言うローカル検索エンジンが組み込まれている。OSに統合されているので違和感なく使えるのが魅力で、かつ概ね満足いく結果が返ってくる。ランチャー代わりに使っているという人も多いのではないだろうか。 ファイルの変化をロギングする そんなSpotlightのメカニズムを利用して開発されたのがFSLoggerだ。 今回紹介するオープンソース・ソフトウェアはFSLogger、ファイル変化のロギングを行うソフトウェアだ。 FSLoggerはターミナル上で動作するソフトウェアだ。実行には管理者権限が必要になる。起動したら後は放置しておくだけで良い。ロギングが開始され、何かファイルの変化がある度に列挙されていくはずだ。 ファイルはただ作成されるだけではなく、テンポラリのファイルを作ってから移動するものもある。そのような変化を見ていく時に便利だろう。ローカルアプリケーショ

                                                                                    Mac OSXのファイル変化をロギングする·FSLogger MOONGIFT