JFrogのログ分析を普罗米修斯とGrafanaで

Kubernetes上でJFrog DevOps平台を実行することは毎日何百万ものア,ティファクトを開発者や顧客に提供することを意味しています。しかし,最高のパフォマンスで運用するには,いくかの重要な質問の回答が必要です。例えば最もリクエストの多いアティファクトは何か?最も人気のあるリポジトリは何か?一番のヘビ,ユ,ザ,は誰か?どのユ,ザ,に問題があり,どのipからアクセスされているのか?

これらの答えを知るためにJFrogから提供されている統合機能はJFrog平台のアクティビティを監視するためのログ分析を提供し,開発の改善を行うための重要なフィードバックを提供することができます。

k8で運用している方は2018年に原生云计算基础(CNCF)から登場して以来,デファクトのKubernetes監視ソリューションである普罗米修斯を既に使用しているかもしれません。可視化ルのGrafanaと一緒に使用することでアプリケーションやk8クラスタ自体のパフォーマンス分析のためのセントラル・ダッシュボードを利用できます。

普罗米修斯ベ,スのモニタリングを強化するために用于Prometheus和Grafana的JFrog日志分析解决方案を提供しています。この統合により,JFrogプラットフォームのログデータを収集し,運用上のメトリクスを調べて,すでに使用しているモニタリングツールで重要な洞察を得ることができます。

普罗米修斯が監視ルとして最適でない場合はSplunk弹性DataDogを利用するためのソリュ,ションも提供しています。

Fluentdのンストル

モニタリングおよびロギングの要となっているのはオープンソースのログコレクターであるFluentdです。Fluentdを使用することですべてのJFrogサービスに共通のロギングとモニタリングレイヤを提供することができます。Fluentdは各種プラットフォ,ムに,ンスト,ルできます。ご利用のプラットフォムのンストルガドをご覧ください。

以下はRedHatにFluentdのtd-agentをンスト,ルする手順です:

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

さらに普罗米修斯Fluentdプラグ电子邮箱ンを▪▪ンスト▪▪ルする必要があります。このプラグインは,ロギングイベントを普罗米修斯のHTTPメトリクスインターフェースとして公開します。これにいては後ほど説明します。

流利の設定

Fluentdは入力ソ,ス,フィルタ,出力の設定を行うテキスト設定ファルで構成されています。普罗米修斯Fluentdプラグ电子邮箱ンはPrometheus用のメトリクスを設定するための構文を提供します。それらはArtifactoryとXrayのログイベントをPrometheusのメトリクスに変換します。ArtifactoryとXray Fluentdの設定ファイルをこらで提供しています。

適切なfluent.conf.*ファaapl .conf, td-agentを起動します。

  • fluent.conf.rt - Artifactory version 7服务器
  • fluent.conf。rt6 - Artifactory版本6服务器
  • conf. Xray - x射线服务器
$ td-agent -c fluentd.config.rt

td-agentはポト番号24321/指标でhttpメトリクス·ンタフェスを公開します。そのurlを指定した場合,以下のようなデ,タが表示されます。

普罗米修斯はこのインターフェースを定期的に”確認”し,これらのメトリクスを時間単位のデータストアに追加します。

普罗米修斯

今回の環境は普罗米修斯库伯尼特斯操作员を使用して普罗米修斯をンストルしました。まだ普罗米修斯がインストールされていない場合,运营商を使った普罗米修斯のインストール方法はこらに記載されています。普罗米修斯Kubernetes运营商を使用することで,普罗米修斯がサービスの新しいメトリクス・インターフェースを自動的に検出するServiceMonitorを設定することができます。それ以外の場合,普罗米修斯のドキュメントに記載されているようにyaml設定ファルを使用することができます。以下のServiceMonitorリソ,ス設定はKubernetesセレクタを使用して任意の新しいメトリクス·。

apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: name: servicmonitor -artifactory-ha-primary labels: metrics: jfrog spec: selector: matchLabels: app: artifactory-ha-primary endpoint:—port: metrics interval: 15s

このセレクタはラベル应用:artifactory-haのようにメトリクス·。このサービスは上記のFluentd普罗米修斯プラグインで設定したHTTPメトリクス・インターフェースを公開します。

apiVersion: v1 kind:服务元数据:labels: app: artifactory-ha-member name: artifactory-member-ha-metrics spec: ports:—name: metrics port: 24231 protocol: TCP selector: role: unified-artifactory-ha-member

普罗米修斯目标リストでのメトリック・インターフェース・サービスの自動検出をさらに検証することができます。

これにより特に何百台ものサーバーを持つ大規模システムでは普罗米修斯の設定を迅速かつ容易に行うことができます。

Grafana

普罗米修斯でメトリクスの収集が可能となったため,普罗米修斯の可視化レイヤであるGrafanaを利用し,メトリクスを可視化できます。普罗米修斯のPromQLクエリ言語を使用し,ダッシュボード用のクエリを設定することができます。例えば以下のPromQLではリクエストされたトップリポジトリを取得できます。

Topk (10, sum by (repo) (jfrog_rt_req{repo!=""}))

そして次のバ,ゲ,ジのウィジェットが表示可能となります。

流利の設定ではArtifactoryとx射线のモニタリング·メトリクスがいくつか提供されており,これらのメトリクスをクエリして独自のダッシュボード・ウィジェットを作成することができます。まずはサンプルのダッシュボ,ドを使用してください。このダッシュボ,ドで,以下のグラフ·ウィジェットを提供しています。

  • 上传数据传输(アップロ、ドされたデ、タ量)
  • 下载数据传输(ダウンロ,ドされたデ,タ量)
  • 热门下载IP(トップダウンロ,ドIP)
  • 上传IP(トップアップロ,ドIP)
  • 按请求排序的顶级工件(リクエスト別トップア,ティファクト)
  • 按请求排序的最高回购数(リクエスト別トップリポジトリ)
  • 按数据排序的最高回购额(デ,タ別トップリポジトリ)
  • 审计用户(監査ユ、ザ、)
  • Artifactory用户访问(Artifactoryユ,ザ,アクセス)
  • Artifactory 5XX状态码(Artifactory 5XXステ,タスコ,ド)
  • Artifactory Errors(Artifactoryエラ)
  • Xray 5XX状态码(Xray 5XXステ,タスコ,ド)
  • x射线错误(x射线エラ,)
  • 拒绝登录(ログaapl .ン試行拒否)
  • IP拒绝动作(IP別アクション拒否)
  • 用户拒绝操作(ユ,ザ,別アクション拒否)

このダッシュボ、ドをGrafanaに、ンポ、トし、使用中のすべてのメトリクスを表示します。

見て学ぶ

より詳細にいてはJFrog日志分析GitHubをご確認ください。

デ,タ重視の組織でJFrog平台を使用している場合,顧客や開発者がバ,Dockerメ,ジ执掌图表去モジュ,ル, Mavenなどをどのように使用しているかについての驚くべきデータソースを見逃している可能性があります。今すぐモニタリングを始めましょう。驚くような発見があるかもしれません。