华为云LTS服务采集Nginx日志

发布于 2025年11月03日

华为云LTS日志服务每个月有免费的500MB额度,如果你得Nginx流量较小,完全够使用。

下面以华为轻量云服务器为例接入LTS

详细使用教程可以查阅华为云官网LTS用户指南

以下仅为我个人接入记录,备忘。如想快速接入Nginx日志被采集到LTS,可以参考以下文档。

1、注册并实名认证华为云,点我跳往注册

2、获取AK SK,下载下来先保存

3、打开LTS控制台,先在配置中心关闭超额继续采集日志,然后找到主机组,点击右上角安装ICAgent按官网步骤安装ICAgent。

我这里的云服务在西南-贵阳一区域,先选择这个区域。

使用SSH连接服务器进行ICAgen安装,安装完成后,控制台可以看到ICAgent的运行状态为运行即可。

4、SSH服务器进行nginx日志格式配置,将日志格式配置成json格式。

字段说明

字段

说明

示例

remote_addr

客户端IP地址

"211.28.65.2"

remote_user

客户端用户名

"-"

time_local

访问时间和时区

"+0800"

request

请求的URI和HTTP协议

"GET / HTTP/1.1"

http_host

请求地址(域名/IP)

"example.com"

status

HTTP响应状态码

"200"

upstream_status

上游服务器状态

"200"

body_bytes_sent

发送给客户端的字节数

"1547"

http_referer

请求来源URL

"https://www.example.com"

http_user_agent

客户端浏览器信息

"Mozilla/5.0..."

ssl_protocol

SSL协议版本

"TLSv1"

ssl_cipher

SSL加密算法

"RC4-SHA"

upstream_addr

上游服务器地址

"10.10.10.10:8080"

request_time

请求处理总时间

"0.205"

upstream_response_time

上游服务器响应时间

"0.002"

编辑配置文件

sudo vim /etc/nginx/nginx.conf
#配置如下
http {
    log_format json_format escape=json
    '{'
        '"remote_addr": "$remote_addr",'
        '"remote_user": "$remote_user",'
        '"time_local": "$time_local",'
        '"request": "$request",'
        '"http_host": "$http_host",'
        '"status": "$status",'
        '"upstream_status": "$upstream_status",'
        '"body_bytes_sent": "$body_bytes_sent",'
        '"http_referer": "$http_referer",'
        '"http_user_agent": "$http_user_agent",'
        '"ssl_protocol": "$ssl_protocol",'
        '"ssl_cipher": "$ssl_cipher",'
        '"upstream_addr": "$upstream_addr",'
        '"request_time": "$request_time",'
        '"upstream_response_time": "$upstream_response_time"'
    '}';

    server {
        # 其他服务器配置...
        
        access_log /var/log/nginx/access.log json_format;
        error_log /var/log/nginx/error.log;
    }
}

重载配置

nginx -s reload

5、再次回到华为云LTS控制台进行日志接入

1、2都可以根据提示来填入。日志组、日志流名称可以自定义

这里主要讲一下第3步 采集配置的设置

这里主要讲一下第4步 索引配置的设置。打开全文索引,然后自动配置字段,总字段24个。提交配置

6、查看采集到的Nginx日志

在LTS控制台,日志管理,找到刚刚配置的日志流,添进去就可以看到已经采集到nginx日志了

7、日志可视化

控制台,点击仪表盘,添加仪表盘。

添加仪表盘分组

添加仪表盘

使用已有模版添加仪表盘

找到Nginx仪表盘模版,选择Nginx访问中心模版。

然后选择刚刚创建的日志流后,点击确定完成仪表盘的添加。

其他2个仪表盘如果需要也可以参照上面步骤自行添加。

8、查看仪表盘

最后图表展示的具体含义可以后续自行去摸索研究。

9、日志告警

配置路径:LTS控制台-日志告警-告警规则-创建告警规则。主要需要了解搜索分析的语句如何写,告警对接SMN通知,支持电话、短信、飞书等通知。以下是我配置的一个告警规则。

以下为触发的告警

10、附:增加SSH安全性

方法一:配置SSH不允许密码登录,只能通过秘钥认证登录。

方法二:在云服务器对应的安全组中,添加ip地址组,限定只允许特定的IP连接服务器SSH

方法三:使用防暴力破解工具Fail2ban

以上3个方法可以同时使用,目前我的服务器使用了方法一和方法二,同时还配置了ssh日志告警,ssh连接失败告警只发飞书通知,ssh连接成功电话通知我(有个缺点就是,自己ssh登录成功也会收到电话通知,总比没有的好,防范以未然嘛。)



评论