【日志系统】Loki日志监控 - 入门初体验

简介: 由于需求对日志进行监控,但是日志又很大,不能直接通过流的方式直接将text读取出来,可以使用grafana+loki+promtail搭建一个轻量级的日志系统,部署也简单方便。grafana提供可视化展示日志,然而loki是存储日志和处理查询,Promtail相当于loki的代理,收集日志发给loki。

使用Grafana+Loki+Promtail入门级部署分布式日志系统(windows环境)

😄生命不息,写作不止
🔥 继续踏上学习之路,学之分享笔记
👊 总有一天我也能像各位大佬一样
🏆 一个有梦有戏的人 @怒放吧德德
🌝分享学习心得,欢迎指正,大家一起学习成长!

Loki安装.jpg

简介

由于需求对日志进行监控,但是日志又很大,不能直接通过流的方式直接将text读取出来,可以使用grafana+loki+promtail搭建一个轻量级的日志系统,部署也简单方便。grafana提供可视化展示日志,然而loki是存储日志和处理查询,Promtail相当于loki的代理,收集日志发给loki。

1、安装grafana

登录如图
截图.png

2、安装loki

下载地址:https://github.com/grafana/loki/releases
下载loki-windows-amd64.exe.zip安装包,并进行解压到F:\soft\grafana\logmanager,解压得到loki-windows-amd64.exe
F:\soft\grafana\logmanager目录下添加loki-local-config.yaml文件,内容如下

auth_enabled: false
  
server:
  http_listen_port: 3100

ingester:
  lifecycler:
    address: 127.0.0.1
    ring:
      kvstore:
        store: inmemory
      replication_factor: 1
    final_sleep: 0s
  chunk_idle_period: 5m
  chunk_retain_period: 30s
  max_transfer_retries: 0

schema_config:
  configs:
    - from: 2022-08-06
      store: boltdb
      object_store: filesystem
      schema: v11
      index:
        prefix: index_
        period: 672h #每张表的时间范围28天

storage_config:
  boltdb:
    directory: /tmp/loki/index # 索引文件存储地址

  filesystem:
    directory: /tmp/loki/chunks # 块存储地址

limits_config:
  enforce_metric_name: false
  reject_old_samples: true

chunk_store_config:
  max_look_back_period: 24h # 最大可查询历史日期 28天,这个时间必须是schema_config中的period的倍数,否则报错。

table_manager: # 配置保留多少天的数据,那么之前数据会被清除,Loki中默认保留所有数据
  retention_deletes_enabled: true
  retention_period: 24h

打开cmd定位到exe目录,执行命令:.\loki-windows-amd64.exe --config.file=loki-local-config.yaml,loki服务启动成功
配置通信端口号:

server:
  http_listen_port: 3200 # http访问端口
  grpc_listen_port: 9096 # 通信端口

启动:

 .\loki-windows-amd64.exe --config.file=loki-local-config.yaml

3、安装promtail

下载地址:https://github.com/grafana/loki/releases
下载promtail-windows-amd64.exe.zip安装包,并解压到F:\soft\grafana\promtail目录,得到promtail-windows-amd64.exe
F:\soft\grafana\promtail目录下添加promtail-local-config.yaml文件,内容如下

server:
  http_listen_port: 9080
  grpc_listen_port: 0

positions:
  filename: /tmp/positions.yaml

clients:
  - url: http://localhost:3100/loki/api/v1/push

scrape_configs:
- job_name: system
  static_configs:
  - targets:
      - localhost
    labels:
      job: viplogs
      __path__: F:\soft\grafana\testlogs\*.log
- job_name: system
  static_configs:
  - targets:
      - localhost
    labels:
      job: viplogs
      __path__: F:\soft\grafana\testlogs\*.log

打开cmd定位到exe目录,执行命令: .\promtail-windows-amd64.exe --config.file=promtail-local-config.yaml,loki服务启动成功。

.\promtail-windows-amd64.exe --config.file=promtail-local-config.yaml

4、使用Grafana+loki+promtail查看日志

登录grafana后在Data sources -> Add data source选择loki配置好相应信息即可
image.png

输入labels标签,右上角可以设置查看时间,然后查询就可以看到,并且支持定时查询日志,笔者暂时没有开启收集日志,并且是使用loki+logback收集的日志(后期会提供相应的篇章介绍),因此截图中没有日志,但能看到标签。
image.png

这样就能够查看日志了,loki是比较轻量级的日志监控系统,通过logback可以定制自己打印日志,还能够自己实现可视化,对于一些工业项目中,可以将日志显示在后台上,方便实施人员查看,这个以后会有相关文章来介绍,这个只是简单的介绍。

👍创作不易,如有错误请指正,感谢观看!记得点赞哦!👍

相关实践学习
通过日志服务实现云资源OSS的安全审计
本实验介绍如何通过日志服务实现云资源OSS的安全审计。
相关文章
WGLOG日志管理系统是怎么收集日志的
WGLOG通过部署Agent客户端采集日志,Agent持续收集指定日志文件并上报Server,Server负责展示与分析。Agent与Server需保持相同版本。官网下载地址:www.wgstart.com
|
6月前
|
Prometheus 监控 Cloud Native
基于docker搭建监控系统&日志收集
Prometheus 是一款由 SoundCloud 开发的开源监控报警系统及时序数据库(TSDB),支持多维数据模型和灵活查询语言,适用于大规模集群监控。它通过 HTTP 拉取数据,支持服务发现、多种图表展示(如 Grafana),并可结合 Loki 实现日志聚合。本文介绍其架构、部署及与 Docker 集成的监控方案。
542 122
基于docker搭建监控系统&日志收集
|
9月前
|
监控 API 开发工具
HarmonyOS Next的HiLog日志系统完全指南:从入门到精通
本文深入解析HarmonyOS Next的HiLog日志系统,涵盖日志级别、核心API、隐私保护与高级回调功能,助你从入门到精通掌握这一重要开发工具。
|
6月前
|
Ubuntu
在Ubuntu系统上设置syslog日志轮替与大小限制
请注意,在修改任何系统级别配置之前,请务必备份相应得原始档案并理解每项变更可能带来得影响。
712 2
|
Java 中间件
SpringBoot入门(6)- 添加Logback日志
SpringBoot入门(6)- 添加Logback日志
458 5
|
存储 前端开发 数据可视化
Grafana Loki,轻量级日志系统
本文介绍了基于Grafana、Loki和Alloy构建的轻量级日志系统。Loki是一个由Grafana Labs开发的日志聚合系统,具备高可用性和多租户支持,专注于日志而非指标,通过标签索引而非内容索引实现高效存储。Alloy则是用于收集和转发日志至Loki的强大工具。文章详细描述了系统的架构、组件及其工作流程,并提供了快速搭建指南,包括准备步骤、部署命令及验证方法。此外,还展示了如何使用Grafana查看日志,以及一些基本的LogQL查询示例。最后,作者探讨了Loki架构的独特之处,提出了“巨型单体模块化”的概念,即一个应用既可单体部署也可分布式部署,整体协同实现全部功能。
4740 69
Grafana Loki,轻量级日志系统
|
8月前
|
存储
WGLOG日志管理系统可以采集网络设备的日志吗
WGLOG日志审计系统提供开放接口,支持外部获取日志内容后发送至该接口,实现日志的存储与分析。详情请访问:https://www.wgstart.com/wglog/docs9.html
|
12月前
|
存储 消息中间件 缓存
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
基于阿里云SelectDB,MiniMax构建了覆盖国内及海外业务的日志可观测中台,总体数据规模超过数PB,日均新增日志写入量达数百TB。系统在P95分位查询场景下的响应时间小于3秒,峰值时刻实现了超过10GB/s的读写吞吐。通过存算分离、高压缩比算法和单副本热缓存等技术手段,MiniMax在优化性能的同时显著降低了建设成本,计算资源用量降低40%,热数据存储用量降低50%,为未来业务的高速发展和技术演进奠定了坚实基础。
521 1
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
|
12月前
|
存储 JSON Go
PHP 日志系统的最佳搭档:一个 Go 写的远程日志收集服务
为了不再 SSH 上去翻日志,我写了个 Go 小脚本,用来接收远程日志。PHP 负责记录日志,Go 负责存储和展示,按天存储、支持 API 访问、可远程管理,终于能第一时间知道项目炸了。
256 10
|
存储 监控 安全
5款 Syslog集中系统日志常用工具对比推荐
集中管理Syslog有助于持续监控网络中的恶意活动,确保日志的搜索和分析更为便捷。常用工具包括Rsyslog、Syslog-ng、Logstash和Fluentd,它们各有优劣。Rsyslog通过多种协议确保日志传输的安全性;Syslog-ng支持高效收集和转发日志;Logstash能解析多源日志并索引;Fluentd将日志转换为JSON格式。卓豪EventLog Analyzer则提供一体化的日志管理,支持日志分析、报表生成、用户行为分析及实时告警,是全面的日志管理解决方案。
330 0