Logsのカスタムアプリケーション検出の定義

Logsでは、Agentがインストールされているサーバ上で動作しているアプリケーションを検出する機能があり、OpsRamp社が提供している定義があるアプリケーションについては自動で検出します。提供されていない定義をユーザ側で定義することができます。

 

設定方法

カスタムアプリケーション検出定義は、Infrastructure > Logs 画面左上のハンバーガーマークのLog Configurationにアクセスし、APP DEFINITIONSのページから設定可能です。

log-configuration

app-definition

「Environment」では、Linux・Windows・Kubernetesから対象システムを選択することができます。
「APP DEFINITION YAML」では、YAML形式で検出定義を設定します。

app-configuration

サンプル検出定義の設定には、下記のような意味があります。

name - アプリケーション名の設定
version - 検出定義のバージョンの設定
skip-app-role - アプリケーションロールを無視するかどうかの設定
instance-checks service-check サービス名からアプリケーションを検出する設定
instance-checks process-check プロセス名からアプリケーションを検出する設定
instance-checks port-check リッスンポートからアプリケーションを検出する設定
instance-checks uri-check URLからアプリケーションを検出する設定
instance-checks command-check コマンドからアプリケーションを検出する設定
instance-checks path-check パスからアプリケーションを検出する設定
mon-type - jmx経由でアプリケーションを監視しているかの設定
misc jmx-port jmxで監視している場合のjmxポートの設定

設定例

Custom-App: 
  type: "file" # Possible values for type [ "file", "journald", "syslog", "kubernetes_logs", "windowseventlog", "docker"]
  source: "custom-app"
  include: # Array of patterns specifying the log file paths to include
    - "/var/log/py-app/test.log"
  parser_type: "regex"
  regex: ^\s*(?P<timestamp>\w*\s*\d*\s*\d*:\d*:\d*)\s*(?P<host>[^\s]*)\s*(?P<syslog_tag>[^:]*):\s*(?P<message>.*)$
  timestamp:
    layout_type: strptime # Valid values are strptime, gotime, and epoch
    layout: '%b %e %H:%M:%S'