首页 > 其他分享 >Grafana+Loki+Promtail 日志监控

Grafana+Loki+Promtail 日志监控

时间:2024-07-07 13:52:49浏览次数:18  
标签:promtail uuid level Grafana Loki loki Promtail grafana software

目录

前置工作

  1. Centos 7
  2. 关闭防火墙 (systemctl stop firewalld)
  3. 独立的用户组(可以不创建)

用户组(按需创建)

# 创建用户组
groupadd grafana
# 新建一个家目录为`/home/grafana`,用户组为`grafana`,用户名为`grafana`的用户
useradd -d /home/grafana -g grafana grafana
# 切换用户
su - grafana
# 创建软件目录及按安装包目录
mkdir -p software
mkdir -p packages

Grafana

# 切换目录
cd packages
# 下载grafana
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-11.1.0.linux-amd64.tar.gz
# 解压
tar -zxf grafana-enterprise-11.1.0.linux-amd64.tar.gz
# 移动目录
mv grafana-v11.1.0 ../software
# 切换目录
cd ../software/grafana-v11.1.0
# 启动服务(访问地址: http://ip:3000,默认用户名及密码:admin/admin),若出现无法访问,请检查防火墙状态是否为关闭的状态
./bin/grafana server

Loki

# 下载地址:https://github.com/grafana/loki/releases,请根据当前系统版本下载相应的文件,并将下载的文件放到packages目录中
# 解压并移动目录
unzip loki-linux-amd64.zip -d ../software/loki
# 创建loki配置文件
touch ../software/loki/loki.yaml
# 启动loki服务(-config.file 指定配置文件位置)
./loki-linux-amd64 -config.file=loki.yaml

Loki 配置文件

auth_enabled: false

server:
  http_listen_port: 3100 # 服务http监听端口
  grpc_listen_port: 9096 # 服务grpc监听端口

common:
  instance_addr: 127.0.0.1
  path_prefix: /tmp/loki
  storage:
    filesystem:
      chunks_directory: /tmp/loki/chunks
      rules_directory: /tmp/loki/rules
  replication_factor: 1
  ring:
    kvstore:
      store: inmemory

query_range:
  results_cache:
    cache:
      embedded_cache:
        enabled: true
        max_size_mb: 100

schema_config:
  configs:
    - from: 2020-10-24
      store: tsdb
      object_store: filesystem
      schema: v13
      index:
        prefix: index_
        period: 24h

ruler:
  alertmanager_url: http://localhost:9093

# By default, Loki will send anonymous, but uniquely-identifiable usage and configuration
# analytics to Grafana Labs. These statistics are sent to https://stats.grafana.org/
#
# Statistics help us better understand how Loki is used, and they show us performance
# levels for most users. This helps us prioritize features and documentation.
# For more information on what's sent, look at
# https://github.com/grafana/loki/blob/main/pkg/analytics/stats.go
# Refer to the buildReport method to see what goes into a report.
#
# If you would like to disable reporting, uncomment the following lines:
#analytics:
#  reporting_enabled: false

Promtail

# 下载地址:https://github.com/grafana/loki/releases,请根据当前系统版本下载相应的文件,并将下载的文件放到packages目录中
# 解压并移动目录
unzip promtail-linux-amd64.zip -d ../software/promtail
# 创建promtail配置文件
touch ../software/promtail/promtail.yaml
# 启动Promtail服务
./promtail-linux-amd64 -config.file=promtail.yaml  -config.expand-env=true

配置文件

Promtail.yaml ,详细配置参考官方文档:https://grafana.com/docs/loki/latest/send-data/promtail/configuration/

server:
  http_listen_port: 9080
  grpc_listen_port: 0

positions:
  filename: /home/grafana/software/promtail/pos/positions.yaml
  sync_period: 10

clients:
  - url: http://192.168.200.128:3100/loki/api/v1/push # 这里需要修改为loki服务的ip地址

scrape_configs:
  - job_name: test_1 # 任务名称(可以通过job_name字段区分项目)
    static_configs:
      - targets:
        - localhost
        labels: # 可以自定义标签,比如主机ip,项目名称,项目环境等等
          ip: 192.168.200.128
          name: test_1
          env: test
          __path__: /home/grafana/logs/test_1.log # 日志路径
    pipeline_stages:
      - json:
          expressions:
            log_level: level
            msg: msg
            timestamp: ts
            uuid: uuid
            request_data: request_data

{"level":"info","ts":"2024-07-04T22:53:26+08:00","msg":"用户查询函数","uuid":"2613d4a4-719e-488e-80c5-a18076ed041f","request_data":"map[]"}
{"level":"info","ts":"2024-07-04T22:53:26+08:00","msg":"用户查询成功","uuid":"2613d4a4-719e-488e-80c5-a18076ed041f"}
{"level":"info","ts":"2024-07-04T22:57:28+08:00","msg":"用户查询函数","uuid":"7887f8bf-8c29-407c-8534-d16ac9e779de","request_data":"map[page:1 pageSize:10]"}
{"level":"error","ts":"2024-07-04T22:57:28+08:00","msg":"用户查询失败","uuid":"7887f8bf-8c29-407c-8534-d16ac9e779de"}
{"level":"info","ts":"2024-07-04T22:57:31+08:00","msg":"用户查询函数","uuid":"d2734fb9-26e5-4828-99b8-1eb68cfb05c4","request_data":"map[page:1 pageSize:1]"}
{"level":"info","ts":"2024-07-04T22:57:31+08:00","msg":"用户查询成功","uuid":"d2734fb9-26e5-4828-99b8-1eb68cfb05c4"}

配置数据源

image-20240706143157243

image-20240706143234638

image-20240706143349698

image-20240706143444296

创建仪表盘

image-20240706163329677

image-20240706163539478

image-20240706163658091

添加查询项

image-20240706170323759

image-20240706170350247

image-20240706170556009

image-20240706170744977

image-20240706170842834

标签:promtail,uuid,level,Grafana,Loki,loki,Promtail,grafana,software
From: https://www.cnblogs.com/jruing/p/18288425

相关文章

  • 使用grafana loki dashboard排查系统间mq消息问题
    背景:几个系统间通过rocketmq的消息传递信息,用户反馈该功能存在一些数据不一致,应该是mq消息丢失或者系统在发消息时候报错,因此在代码中先打上日志并发布。日志由多个[tag]加详细信息组成,例子如:log.info("[MqAction][Proxy][ProxyMqReceive][ProxyNotificationCnsmRouteMqReceive]......
  • Centos7.9安装普罗米修斯+grafana
    一、基本概念​1、之间的关系​prometheus与grafana之间是相辅相成的关系。作为完美的分布式监控系统的Prometheus,就想布加迪威龙一样示例和动力强劲。在猛的车也少不了仪表盘来观察。于是优雅的可视化平台Grafana出现了。​简而言之Grafana作为可视化......
  • 经典病毒上线流量分析-Lokibot
    一、概述Lokibot于2015年面世,持续活跃至今,是一种高度危险且隐匿的恶意软件,旨在窃取受害主机的敏感信息,包括存储的密码、浏览器登录凭据以及加密货币钱包等,并将这些信息上送到远程C2服务器上。本文将重点针对Lokibot家族的上线包进行分析,让读者可以更深入了解经典病毒Lokibot的......
  • linux可视化监控:Grafana+Prometheus+node_exporter
    原理node_exporter:它的作用主要是收集性能测试的数据,如cpu、内存磁盘网络等信息,然后将数据保存到prometheus,相当于将数据存入到数据库中;想要监控不同的内容,就使用不同的exporter,比如mysqld_exporterPrometheus:虽然说是监控平台,但是实际上是一套数据库,用于做数据存储,不能做展......
  • 在 VS Code 上配置 Grafana 的本地开发环境
    为了在VSCode上顺利进行Grafana的本地开发,需要配置Node.js环境、安装Yarn和依赖、并确保开发工具能够正常工作。以下是配置和启动本地开发环境的详细步骤,包括使用yarndlx命令来确保VSCode正确配置。步骤1:安装并使用正确版本的Node.js首先,确保你使用的是Node.j......
  • Docker搭建FRP+OPENVPN+Prometheus+Grafana 实现内网穿透以及流量监控
    Docker搭建FRP+OPENVPN+Prometheus+Grafana实现内网穿透以及流量监控文章目录Docker搭建FRP+OPENVPN+Prometheus+Grafana实现内网穿透以及流量监控一、搭建Docker基础环境二、配置FRP,实现端口映射2.1使用Docker部署FRPFrps服务端(拥有公网IP)Frpc客户端(内网IP)三、搭建......
  • Prometheus+grafana部署
    分类出所需的监控项种类一般可分为︰业务级别监控/系统级别监控/网络监控/程序代码监控/日志监控/用户行为分析监控/其他种类监控大的分类还有更多的细小分类,这里给出几个例子,例如:业务监控可以包含用户访问QPS,DAU日活,访问状态,业务接口,产品转化率,充值额度,用户投诉等等这些很宏观......
  • Grafana监控系统的构建与实践
    本文深入探讨了Grafana的核心技术、数据源集成、仪表盘与可视化构建以及监控与告警配置,旨在为专业从业者提供全面的Grafana技术指南。关注【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复......
  • grafana中制作图表的一些小问题
    1.在grafana中创建的一个表,表中有多个指标,而有些指标的标签是不一样的,比如有的是以node分组的,而一些标签中没有node,但是具体值一样的,标签名为instance,所以这里就需要将instance替换为node,否则分组不同是不能显示在一张表上的,使用label_replace(原本的promql,"node","$1","inst......
  • 一分钟部署prometheus&grafana全方面监控SpringBoot项目
    0x01创建目录找一个你喜欢的地方,创建项目根目录example:[root@demo-78~]#mkdir/data/prometheus0x02创建配置文件进入到项目根目录:[root@demo-78~]#cd/data/prometheus需要新建三个文件,分别是docker-compose.yml、prometheus.yml、node_down.yml,详细配置如下......