使用Datadog Analytics跟踪JFrog平台性能

通过跟踪Artifactory和Xray的使用数据,可以最好地保证您的JFrog平台的忠实运行。通过实时可观察性和日志分析获得的洞察力,您可以提高DevOps管道的效率,并保持软件版本的愉快运行。

Datadog是一个基于saas的数据分析平台,是一种广泛用于云规模应用程序的监控服务。它是一个数据分析平台可以很容易地启用JFrog平台监控集成

让我们看一下安装数据收集器集成和使用DataDog监视JFrog平台操作的两步过程。

使用Fluentd

首先,我们有一个JFrog日志分析集成使用开源数据收集器Fluentd可以与JFrog平台部署的每个产品实例一起安装。Fluentd为JFrog平台中的每个产品执行日志输入、字段提取和记录转换,并将该数据的输出规范化为JSON。

有了这种通用格式的所有日志数据,Fluentd将通过Fluentd的可插拔架构将其传递到Datadog仪表板上。

安装FluentD

你必须安装Fluentd日志代理程序在JFrog平台部署(JPD)的每个节点中。该代理将跟踪各种JPD日志文件中的新条目,应用任何相应的记录转换,然后发送到Fluentd的相关输出插件。

要在每个节点上安装Fluentd代理,请根据节点的操作系统类型执行步骤Fluentd安装指南

例如,对于运行Red Hat UBI Linux操作系统的节点,Fluentd代理td-agent必须安装。对于基于根的包管理器(需要根访问权限):

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


或者,对于Red Hat UBI上的用户空间安装,到
安装Fluentd Ruby和Gem:

$ curl -O | tar -xvf

配置FluentD

取决于我们是刚刚完成了基于根还是非根的安装Fluentd配置文件可能需要放置在不同的位置。

默认情况下,包管理器根安装td-agent.conf文件位于/etc/td-agent/

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


对于非基于根的安装,我们可以存储td-agent.conf文件的任何地方,我们有写权限。当我们运行td-agent时,可以使用- c标志将Fluentd指向此文件位置。

派生的配置文件替换该配置文件JFrog日志分析Github的repo

在这个repo中,弹性文件夹包含配置文件模板。使用与节点中运行的JFrog应用程序匹配的模板。

我们将需要使用匹配的指令它指定指向Datadog实例的主机和端口。

#DATADOG OUTPUT @type DATADOG @id Datadog_agent_Artifactory api_key # optional include_tag_key true dd_source Fluentd #END DATADOG OUTPUT

运行Fluentd

现在我们有了新的配置文件,我们可以开始了td-agent登录到容器后,作为pod上的服务:

$ systemctl start td-agent


对于非root安装,我们可以直接针对配置文件运行td-agent:

$ td-agent -c td-agent.conf

这将启动Fluentd日志代理,它将跟踪JPD日志并将它们全部发送到Elasticsearch。

你必须对所有运行Artifactory和Xray的Kubernetes pod重复这些过程。

使用Datadog

Datadog可以通过创建一个帐户并通过登录步骤来设置,或者如果已经存在,可以使用apiKey来设置。如果是新的Datadog设置,请执行以下操作:

  • 通过在Kubernetes集群中部署一个Helm图表来运行Datadog代理
  • 要启用日志收集,请更新Datadog-values.yaml在入职步骤中给出
  • 一旦代理开始报告,您将获得一个apiKey,我们将使用它通过Fluentd发送格式化的日志
  • 通过转到安装Fluentd集成集成,搜索Fluentd并安装它

一旦数据狗设置好,我们就可以通过日志>查询。我们还可以选择要从中获取日志的特定源。

如果存在apiKey,则使用Datadog Fluentd插件将日志直接从Fluentd转发到您的Datadog帐户。遵循Fluentd插件的Artifactory配置说明设置您的集成。添加适当的元数据是在Datadog中释放日志全部潜力的关键。默认情况下,主机名时间戳字段应该被重新映射,这样我们就不用指定它们了。

添加所有属性为facet fromfacet >添加在屏幕的左边日志>查询

现在创建一个新的仪表板Dashboards > New Dashboard >新屏幕板

export.json并用它替换现有的新仪表板。现在,您可以访问仪表板,其中包含通过我们的数据小部件显示的信息,从而为JFrog统一平台提供实时可观察性。

安装后,JFrog平台日志仪表板将显示关键操作指标的时间线和计数数据:

  • 日志卷,可按类型过滤
  • 服务错误
  • HTTP响应码
  • 访问图像
  • 访问存储库
  • 上传/下载的数据传输(以GB为单位)
  • 上传/下载Top 10 ip
  • 按用户名审计操作
  • 通过IP和用户名拒绝操作和登录
  • 通过用户名接受部署

抓取解决方案

现在,使用Datadog,您拥有了一个强大的跟踪解决方案,并且可以跨其所有服务和执行节点监视JFrog平台部署,从而获得有关其操作的宝贵数据见解。