概要
このインテグレーションを使用すると、Sinatra アプリケーションから Web アクセスログを取得して、以下を監視できます。
- エラーログ (4xx コード、5xx コード)
- Web ページの応答時間
- リクエスト数
- 送受信されたバイト数
セットアップ
インストール
Sinatra アプリケーションを実行するインスタンスに Agent をインストールします。
コンフィギュレーション
Sinatra のログ機能は、デフォルトでログを stdout に記録します。Rack の CommonLogger を使用して、ログをファイルとコンソールに記録することをお勧めします。
以下に、ログをファイルとコンソールに生成する構成例を示します。これは、Rack 構成ファイル (config.ru
) または Sinatra アプリケーションの構成ブロックで設定できます。
require 'sinatra'
configure do
# クラシックスタイルのアプリケーションでは、ログはデフォルトで有効になっています。
# したがって、`enable :logging` は必要ありません。
file = File.new("/var/log/sinatra/access.log", 'a+')
file.sync = true
use Rack::CommonLogger, file
end
get '/' do
'Hello World'
end
このロガーは、一般的な Apache アクセス形式を使用して、次の形式でログを生成します。
127.0.0.1 - - [15/Jul/2018:17:41:40 +0000] "GET /uptime_status HTTP/1.1" 200 34 0.0004
127.0.0.1 - - [15/Jul/2018 23:40:31] "GET /uptime_status HTTP/1.1" 200 6997 1.8096
ログの収集
Agent バージョン 6.0 以降で利用可能
Datadog Agent で、ログの収集はデフォルトで無効になっています。以下のように、datadog.yaml
ファイルでこれを有効にします。
Sinatra アプリケーションログの収集を開始するには、Agent の構成ディレクトリのルートにある sinatra.d/conf.yaml
ファイルに次の構成ブロックを追加します。
logs:
- type: file
path: /var/log/sinatra/access.log
source: sinatra
service: webapp
path
パラメーターと service
パラメーターの値を変更し、環境に合わせて構成してください。
Agent を再起動します。