Supported OS Linux Mac OS Windows

To find out if this integration is available in your organization, see your Datadog Integrations page or ask your organization administrator.

To initiate an exception request to enable this integration for your organization, email support@ddog-gov.com.

概要

このインテグレーションを使用すると、Sinatra アプリケーションから Web アクセスログを取得して、以下を監視できます。

  • エラーログ (4xx コード、5xx コード)
  • Web ページの応答時間
  • リクエスト数
  • 送受信されたバイト数

セットアップ

インストール

Sinatra アプリケーションを実行するインスタンスに Agent をインストールします。

コンフィギュレーション

Sinatra のログ機能は、デフォルトでログを stdout に記録します。RackCommonLogger を使用して、ログをファイルとコンソールに記録することをお勧めします。

以下に、ログをファイルとコンソールに生成する構成例を示します。これは、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 以降で利用可能

  1. Datadog Agent で、ログの収集はデフォルトで無効になっています。以下のように、datadog.yaml ファイルでこれを有効にします。

    logs_enabled: true
    
  2. Sinatra アプリケーションログの収集を開始するには、Agent の構成ディレクトリのルートにある sinatra.d/conf.yaml ファイルに次の構成ブロックを追加します。

    logs:
      - type: file
        path: /var/log/sinatra/access.log
        source: sinatra
        service: webapp
    

    path パラメーターと service パラメーターの値を変更し、環境に合わせて構成してください。

  3. Agent を再起動します