Loki

什么是Loki

Loki是受Prometheus启发的水平可扩展,高度可用的多租户日志聚合系统。他被设计为非常经济高效且易于操作。它不索引日志内容,而是为每个日志流设置一组标签

Loki文档网址:https://grafana.com/docs/loki/latest/

下载网址:https://github.com/grafana/loki/releases

安装loki

  • 获取软件包
  • 解压软件包
unzip loki-linux-amd64.zip
[root@localhost loki]# ll
-rwxr-xr-x 1 root root 88166400 May 20  2020 loki-linux-amd64
-rw-r--r-- 1 root root 26432293 Feb 22 11:26 loki-linux-amd64.zip
  • 编写配置文件
vim loki.yaml
---
auth_enabled: falseserver:http_listen_port: 3100ingester:lifecycler:address: 192.168.0.181ring:kvstore:store: inmemoryreplication_factor: 1final_sleep: 0schunk_idle_period: 5mchunk_retain_period: 30smax_transfer_retries: 0schema_config:configs:- from: 2020-07-01store: boltdbobject_store: filesystemschema: v11index:prefix: index_period: 168hstorage_config:boltdb:directory: /loki/indexfilesystem:directory: /loki/chunkslimits_config:enforce_metric_name: falsereject_old_samples: truereject_old_samples_max_age: 168hingestion_rate_mb: 15chunk_store_config:max_look_back_period: 0stable_manager:retention_deletes_enabled: falseretention_period: 0s
  • 启动loki
[root@localhost loki]# nohup ./loki-linux-amd64 -config.file=./loki.yaml >./loki.log 2>&1 &
[1] 108017
[root@localhost loki]# ps -fe|grep loki
root     108017  79258  9 16:00 pts/0    00:00:00 ./loki-linux-amd64 -config.file=./loki.yaml

安装promtail

promtail是负责日志收集,类似elk中的logstash、filebeat等,如果收集docker容器日志的话可以用docker插件来收集容器日志

  • 获取软件包并解压
  • 配置pormtail配置文件
vim promtail.yaml
---
server:http_listen_port: 9080grpc_listen_port: 0positions:filename: ./positions.yamlclients:- url: http://192.168.0.181:3100/loki/api/v1/pushscrape_configs:- job_name: zzzstatic_configs:- labels:app: zzzhost: 192.168.0.181env: prod__path__: /var/log/messages
  • 启动promtail
nohup ./promtail-linux-amd64 -config.file=./promtail.yaml > ./promtail.log 2>&1 &
[root@localhost loki]# ps -fe|grep promtail
root     113788  79258  1 17:00 pts/0    00:00:00 ./promtail-linux-amd64 -config.file=./promtail.yaml

配置grafana展示日志


收集docker容器日志

  • 确认docker版本
[root@localhost local]# docker --version
Docker version 18.09.7, build 2d0083d

需要更改docker的log-driver为loki 13版本的会更改失败

  • 安装插件
docker plugin install grafana/loki-docker-driver:latest --alias loki --grant-all-permissions
[root@localhost local]# docker plugin list
ID                  NAME                DESCRIPTION           ENABLED
5df430512cf6        loki:latest         Loki Logging Driver   true
  • 启动容器测试
docker run -itd -p 80:80 --log-driver=loki --log-opt loki-url="http://192.168.0.181:3100/loki/api/v1/push" --log-opt max-size=50m --log-opt max-file=10 nginx

通过curl命令访问nginx,然后再grafana中查看

Loki搭建日志收集系统相关推荐

  1. docker搭建grafana+loki+promtail日志收集系统

    文章目录 docker搭建grafana+loki+promtail日志收集系统 1.拉取镜像 2.loki搭建 1)新建配置文件 2)启动容器 3.promtail搭建 1)新建配置文件 2)启动容 ...

  2. 深入浅出ELK日志收集系统搭建

    先看一下目录图 背景 试想这么一种场景:Nginx负载了2个Tomcat,那么日志查看就很麻烦了,每次查看日志都要登录2台服务器,挨个搜索,2台还好,如果5台呢?10台呢?那查看日志就可费劲了,所以需 ...

  3. 使用ELK搭建日志收集和分析系统

    搭建日志收集和分析系统需要以下步骤: 安装Java运行环境 ELK是基于Java开发的,因此需要在服务器上安装Java运行环境 安装Elasticsearch Elasticsearch是ELK的核心 ...

  4. 借鉴开源框架自研日志收集系统

    踏浪无痕 岂安科技高级架构师 十余年数据研发经验,擅长数据处理领域工作,如爬虫.搜索引擎.大数据应用高并发等.担任过架构师,研发经理等岗位.曾主导开发过大型爬虫,搜索引擎及大数据广告DMP系统目前负责 ...

  5. 你居然还去服务器上捞日志,搭个日志收集系统难道不香么!

    摘要 ELK日志收集系统进阶使用,本文主要讲解如何打造一个线上环境真实可用的日志收集系统.有了它,你就可以和去服务器上捞日志说再见了! ELK环境安装 ELK是指Elasticsearch.Kiban ...

  6. java 如何去掉http debug日志_你居然还去服务器上捞日志,搭个日志收集系统难道不香吗?...

    作者:MacroZheng 链接:https://juejin.im/post/5eef217d51882565d74fb4eb 来源:掘金 SpringBoot实战电商项目mall(35k+star ...

  7. 基于Flume的美团日志收集系统(一)架构和设计

    背景 美团的日志收集系统负责美团的所有业务日志的收集,并分别给Hadoop平台提供离线数据和Storm平台提供实时数据流.美团的日志收集系统基于Flume设计和搭建而成. <基于Flume的美团 ...

  8. 基于Flume的美团日志收集系统-----架构和设计

    问题导读: 1.Flume-NG与Scribe对比,Flume-NG的优势在什么地方? 2.架构设计考虑需要考虑什么问题? 3.Agent死机该如何解决? 4.Collector死机是否会有影响? 5 ...

  9. 实战:kafka实现日志收集系统

    实战:kafka实现日志收集系统 一.Kafka案例需求概述 1.1 需要收集的信息: 用户唯一标识 用户操作时间 具体用户操作 1.2 工作流程: 用户的操作会由Web服务器进行响应. 同时用户的操 ...

  10. java 如何去掉http debug日志_你居然还去服务器上捞日志,搭个日志收集系统难道不香么!...

    作者:MacroZheng 链接:https://juejin.im/post/5eef217d51882565d74fb4eb 摘要 ELK日志收集系统进阶使用,本文主要讲解如何打造一个线上环境真实 ...

最新文章

  1. 关于Eclispse连接Mysql的Jdbc
  2. PHP添加mcrypt扩展模块(亲测)
  3. leetcode147 对链表进行插入排序
  4. 不爱沟通的人可以做产品经理嘛?
  5. android复习第二天------布局
  6. Initialization of bean failed; nested exception is org.springframework.beans.factory.: 错误分析
  7. 【MySQL】sql语句中exists和in有何区别?
  8. 2.5 结构化程序设计的方法
  9. java笔记高级部分
  10. centos7 python3 爬虫登陆邮箱_使用爬虫爬取超星学习通的作业时间并且通过邮件提醒!...
  11. 南京大学计算机学院英才计划,2020年“英才计划”工作实施方案
  12. 小学思维导图免费模板合集!家长必收藏
  13. 【Elasticsearch源码】 GET分析
  14. 人工智能的发展方向与机遇
  15. GIS-测绘学概论(5)
  16. 【location】将url参数转换为对象的形式
  17. 数据安全需要做什么?
  18. 让我摘下星星送给你_抖音中摘下星星给你摘下月亮的歌词是什么歌 星球坠落歌词在哪听...
  19. Python3之旅之计算机基础知识
  20. Python实现 文本词频统计(嵩天老师)

热门文章

  1. java实训小结_java实训心得体会(精选4篇)
  2. 推荐2021年最受欢迎的15款Vue后台管理模板
  3. 计算机控制技术电子课件,电子科技大学计算机控制技术课件04.ppt
  4. OpenCV运动目标检测背景差法和帧差法的理解
  5. datavideo切换台说明书_SE-700切换台-应用篇
  6. python调用java之Jpype异常机制
  7. Envi处理大气校正时报错,怎么解决呀
  8. 在VS中生成汇编语言程序(.asm文件)的方法
  9. zip 的ZipEntry转换为InputStream
  10. 晶体管扩流电源电路设计