30分钟部署一个轻量级日志收集系统(nginx日志为例)

基于docker 快速部署Loki、Promtail、Grafana,搭建一个轻量级日志收集系统。由于个人的云服务器上的Java服务没有日志收集系统,搭建ELK系统资源不够(只有2核4G),所以采用了这一套轻量级的日志收集系统。


1. 设置nginx日志格式

        ##
        # Logging Settings
        ##

        log_format access_json ' {"@timestamp":"$time_iso8601",'
                                ' "host":"$server_addr",'
                                ' "clientip":"$remote_addr",'
                                ' "size":$body_bytes_sent,'
                                ' "responsetime":$request_time,'
                                ' "upstreamtime":"$upstream_response_time",'
                                ' "upstreamhost":"$upstream_addr",'
                                ' "request":"$request",'
                                ' "uri":"$uri",'
                                ' "domain":"$host",'
                                ' "x_forwarded_for":"$http_x_forwarded_for",'
                                ' "referer":"$http_referer",'
                                ' "tcp_xff":"$proxy_protocol_addr",'
                                ' "http_user_agent":"$http_user_agent",'
                                ' "status":"$status"}' ;

        access_log /var/log/nginx/access.log access_json;

2. 使用docker部署Loki、promtail、grafana

# 新建一个工作目录,后续会下载两个配置文件到当前目录并挂载到docker容器中
mkdir loki && cd $_

wget https://raw.githubusercontent.com/grafana/loki/v2.8.0/cmd/loki/loki-local-config.yaml -O loki-config.yaml
docker run --name loki -d -v $(pwd):/mnt/config -p 3100:3100 grafana/loki:2.8.0 -config.file=/mnt/config/loki-config.yaml

wget https://raw.githubusercontent.com/grafana/loki/v2.8.0/clients/cmd/promtail/promtail-docker-config.yaml -O promtail-config.yaml
docker run --name promtail -d -v $(pwd):/mnt/config -v /var/log:/var/log --link loki grafana/promtail:2.8.0 -config.file=/mnt/config/promtail-config.yaml

docker run --name grafana -d -p 3000:3000 --link loki grafana/grafana-oss


3. 配置grafana

3.1 访问并登录grafana

访问地址:http://机器IP:3000

用户名密码:admin/admin

3.2 添加数据源

配置 Loki 地址:http://loki:3100

点击 Save & test 测试并保存


4. 查看数据

4.1 切换到 grafana 左侧区域的 Explore

4.2. label browser



4.3. show logs



4.4.  大功告成

5. 其他

5.1. 给grafana设置新密码

进入容器:docker exec -it bash grafana

容器中执行:grafana-cli admin reset-admin-password 你的新密码

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值