JFrogのログ分析をSplunkで

両方を使用することで最良の結果が生み出されます。

単一のユザンタフェスで動作するように,すべてのソリュ,ションを統合したJFrog DevOpsプラットフォ,ムを構築しました。Artifactory 7によるこの統合はソフトウェアのビルドパ▪▪プラ▪▪ンを完全に制御できます。

また,プラットフォームの運用を維持するためにはプラットフォーム全体の運用状況をリアルタイムで統一的に把握する必要があります。すでにお使いの分析/可視化ルを利用して,非常に容易に実現できるルをいくか提供しています。

ここでは,これらの新しいJFrogツールをインストールし,Splunkを利用したJFrogプラットフォームの動作を監視する方法をご紹介します。

統合プラットフォ,ムのためのログ集約

JFrogプラットフォームは多数のマイクロサービスによって実現されており,それぞれが独自のログレコードを持っています。高可用性のJFLogプラットフォーム・デプロイメント(詹妮弗)のように複数のノードに分散している場合,プラットフォームの全操作はネットワーク上の25以上のログに分散している可能性があります。

運用チームはパフォーマンスを分析し,運用上の問題を追跡するために,この詹妮弗ログデータを1つに集約する手段を必要としています。また,小規模な企業の詹妮弗であっても毎日何百万ものトランザクションイベントを記録している場合,オペレータはそのデータの詳細を確認するためには強力な分析ツールを利用する必要があります。

Splunkの準備

Splunkがログデ,タを受信できるようにするにはSplunkでHTTP事件收集器(hec)を設定する必要があります。Splunk企业でHECを設定することができます。

Splunkで既に他の用途でHECが有効になっている場合でも,JFrogプラットフォームで排他的に使用するための認証トークンを作成する必要があります。

hecの設定から以下の内容を確認しておく必要があります。

  • Hecト,クン-認証のために作成したguid . Hec
  • HECホスト- HECを実行するSplunk emcンスタンス
  • Hecポト- Hecグロバル設定で指定したポト番号

この設定によりSplunkはJFrogプラットフォ,ムからのメッセ,ジを受信できるようになります。

流利の使用

まず,オ,プンソ,スのデ,タコレクタであるFluentd利用できるようにしました。FluentdはJFrogプラットフォームの各製品に対するログ入力、フィールドの抽出、レコードの変換を行い、このデータをJSONに変換します。

すべてのログデータを共通フォーマットで利用できるため,Fluentdはプラグインを介して,お客様が選択した分析ツールにログデータを送信します。

Fluentdのンストル

各JPDノドにはFluentdロギングエジェントがンストルされている必要があります。このエージェントは様々な詹妮弗ログファイルを処理し,新しいログ行を解析後,対応するレコードに変換し,Fluentdの関連する出力プラグインに送信する役割を持っています。

各ノドにFluentdエジェントをンストルするにはFluentdンストルガドに記載されている通り,osの種類に応じた手順を実施します。

例えばRed Hat Linux无论何时を動作させているノードではFluentdエージェント“td-agentをインストールする必要があります(このOSでは根アクセスが必要です):

$ curl -L https://toolbelt.treasuredata.com/sh/install-redhat-td-agent3.sh | sh

“td-agent”は指定されたディレクトリに存在します

$ which td-agent /usr/sbin/td-agent

また,お使いの分析ツールに合ったFluentd出力プラグインをノードにインストールする必要があります。Splunkの場合はSplunk Enterprise用のFluentdプラグンになります。

流利の設定

Fluentdエジェントをンストル後,デフォルトの設定ファルが含まれています。

$ ls -al /etc/td-agent/td-agent.conf -rw-r——r——1 root root 8017 5月11日18:09 /etc/td-agent/td-agent.conf

この設定ファ@ @ルをGitHubリポジトリのJFrog日志分析の設定ファ@ @ルに置き換える必要があります。

このリポジトリのfluentdフォルダに設定ファルのテンプレトが含まれています。ノ,ドで実行されているJFrogアプリケ,ションにマッチするテンプレ,トを使用してください。

テンプレートをダウンロード後,Fluentdの設定ファイルにSplunk HECの値を設定する必要があります:

...#SPLUNK输出@type splunk_hec主机HEC_HOST <港口HEC_PORT令牌HEC_TOKENformat json #缓冲输出参数flush_interval 10s # time format time_key time time_format %Y-%m-%dT%H:% m:%S。% lz# ssl参数use_ssl true ca_file /path/to/ca。Pem @type splunk_hec主机HEC_HOST港口HEC_PORT令牌HEC_TOKENformat json #缓冲输出参数flush_interval 10s # time format time_key timestamp time_format %Y-%m-%dT%H:% m:%S。% lz# ssl参数use_ssl true ca_file /path/to/ca。pem # SPLUNK输出

流利の実行

設定ファルが作成されたのでシステム上のサビスとして“td-agent”を起動できます:

$ systemctl start td-agent

設定ファaapl . exeルを指定して,直接" td-agent "を実行することもできます

$ td-agent -c td-agent.conf

これでFluentdのロギングエージェントが起動し,詹妮弗のログをSplunkに全て送信することができます。

Splunkの使用

集約されたログデータがFluentdを通して利用可能になった後,Splunkを使ってデータの検索,分析,可視化を行うことができます。

Splunkbaseで利用できるSplunk用のJFrog日志アプリをインストールし,JFrogプラットフォームのログデータをSplunkアカウントに接続する必要があります。

インストール後JFrog日志ダッシュボードには主要なメトリクスのタイムラインとカウントデータが表示されます:

  • タ@ @プでフィルタリング可能な日志ボリュ@ @ム
  • サビスエラ
  • httpレスポンスコド
  • アクセスした▪▪メ▪▪ジ
  • アクセスしたリポジトリ
  • アップロド/ダウンロドしたデタ転送量(gb単位)
  • アップロド/ダウンロドしたトップ10のipアドレス
  • ユ,ザ,名による監査アクション
  • ipとユザ名による拒否されたアクションとログン
  • デプロしたユザ名

集約されたデータを使用してSplunkで独自のカスタムダッシュボードを作成し,運用に必要な情報も取得できます。

集約

ログ分析のインストールによって,JFrogプラットフォームはすべてのサービスと実行ノードの監視が非常に簡単になります。

この完全なソリューションはArtifactory 7とJFrogプラットフォームの他のコンポーネントでのみ動作します。Artifactory6からのアップグレードをご検討している場合、これをアップグレードする理由の一つに加えてください。