使用Grafana Agent收集日志
Grafana Cloud堆栈包括一个由Grafana Loki提供支持的日志服务,这是一个普罗米修斯式的日志聚合系统。这意味着您不需要运行自己的Loki环境,尽管您可以使用Promtail或将日志发送到Grafana Cloud另一个受支持的客户端如果你想维护一个自托管的洛基环境。看到使用Promtail收集日志.
先决条件
- 一个Grafana云账户
- 产生日志的应用程序或系统
步骤1。安装Grafana Agent
Grafana代理支持收集日志并将它们发送到Loki洛基
子系统。这是使用上游完成的PromtailLoki开发团队创建的官方第一方日志收集客户端。Grafana Agent通常部署到有要监视的日志数据的每台机器上。有关横向扩展Grafana Agents部署的选项,请参见此操作指南.
以收集日志为目的,Grafana Agent的安装方式如下:
- 安装与Grafana Cloud捆绑在一起的代理集成支持日志收集。
- 中的安装说明如下Kubernetes日志快速入门.
有关安装Grafana Agent以收集度量和/或跟踪的其他方法,请参见从Grafana Agent开始和快速入门导游。
步骤2。查看Grafana Agent配置文件
Grafana Agent配置文件的内容和位置取决于前面讨论的安装选项。对于Linux环境中单个主机上的独立安装,代理配置存储在/etc/grafana-agent.yaml
默认情况下。
有关在Kubernetes集群传送日志中管理Grafana Agent的详细信息,请参阅Grafana代理日志Kubernetes快速入门
注意:读洛基标签的最佳实践学习如何有效地使用标签以获得最佳体验。
一些集成将默认配置Grafana Agent YAML配置文件来发布日志。根据需要,遵循集成安装过程中提供的说明。
如果您想为其他位置或其他文件名的日志添加其他部分,请参阅下面的示例。
在本例中,添加了一个作业来发送以。结尾的任何内容日志
从位置看/var/log/
.的下面添加作业scrape_configs:
在任何其他部分之前job_name
部分:
Scrape_configs:—job_name: varlogs static_configs:—targets: [localhost] labels: job: varlogs __path__: /var/log/*log—job_name: applogs . txt
这里有一个例子dmesg命令
日志:
—job_name: dmesg static_configs:—targets: [localhost] labels: job: dmesg __path__: /var/log/dmesg
的子目录中存储的日志,为Minecraft服务器抓取日志/家庭
一个特殊minecraft用户的目录。
—job_name: minecraftlog static_configs:—targets: [localhost] labels: job: minecraft __path__: /home/MCuser/minecraft/logs/latest.log
注意:您需要将Grafana Agent用户添加为您打算从中收集的任何自定义日志位置的所有者。例如,添加
grafana-agent
用户到组adm
拥有/var/syslog
(组名在您的系统上可能不同,这取决于您的Linux发行版和日志位置),如下所示:
sudo usermod -a -G adm grafana-agent
更改代理配置时,必须重新启动代理以使新配置生效。
Sudo systemctl restart grafana-agent.service
查看Grafana Agent的状态:
Sudo systemctl status grafana-agent.service
有关Grafana Agent问题的故障排除指南,请参见处理Grafana代理故障
有关的详细信息logs_config
块在Grafana代理YAML配置文件,参见配置Grafana Agent
有关创建Grafana Agent YAML配置文件的更多示例和详细信息,请参见创建配置文件
步骤3。确认日志正在输入到Grafana Cloud中
在几分钟内,Grafana Cloud中将开始提供日志。要测试这一点,请使用探索特性。
点击指南针探索图标从左侧侧边栏菜单开始。这将把您带到Explore页面。
在页面顶部,使用下拉菜单选择Loki日志数据源。这个应该命名为grafanacloud - yourstackname-logs美元
.
下图显示了日志浏览器下拉菜单,可以找到输入到Grafana Cloud环境的日志标签。
如果没有出现日志标签,说明没有收集日志。如果列出了标签,则确认正在接收日志。
如果几分钟后仍未显示日志,请确认代理正在运行,并检查步骤中是否有错字。
除了日志浏览器下拉,探索用户界面还支持自动完成选项:
下面是其他可用的操作符和解析器的另一个示例。查询日志数据的详细操作请参见LogQL:日志查询语言
查询日志和创建面板
在日志源上启动并运行Grafana Agent之后,给它一些时间开始收集日志。最终,您将能够使用Loki作为数据源在仪表板内查询日志和创建面板。
有关示例和功能展示,请查看play.grafana.org为了创意和灵感。