云服务器日志大小 阿里云服务器日志
▷ 摘要
- 背景
在工作中,
可以通过分析 nginx 服务器产生的日志
来判断服务器访问负载、资源使用、接口访问、流量时间等信息;
相对而言,比起我们去自己筛选分析,耗时耗力,且难以保证满意度;
更建议选择一些第三方工具,方便我们分析 nginx 服务器产生的日志
所以,这里可以建议使用 阿里云-日志服务SLS …
在此,我将实际配置的操作步骤,记录一下,方便有需要的同事,借鉴使用 (【官方文档--快速入门>>>】) …
☞ 前提条件
①. ESC (阿里云服务器)
1. 已有可用的ECS 2. ECS服务器上已有待采集的日志②. nginx 配置文件
在 nginx.conf 文件中,完成对参数 log_format、access.log 的配置
- 我的配置信息如下:
【提示】: 在 Nginx中,由 log_format 控制日志格式,access_log 控制存储路径
- 日志样例为:
【提示】: 当前的日志样例,是重启 nginx 服务后,跑出的最新日志,后面的 Logtail 配置时要用到
☞ 第一步、阿里云 Logtail 相关服务配置
从工作台,快速找到 【日志服务 SLS】,也可直接进入 >>> 链接 >>>
①. 创建 Project
- 进入页面后,可以重新创建 Project ,
如果以前已对相关项目创建过,可在对应的记录中使用
②. 创建日志库
- 进入Project 后,切换左侧导航栏-日志库,进行 logtail 配置
③. 创建机器组
- 这里,如果是第一次配置 日志服务,可以切换 "自建机器" 然后,安装 Logtail 客户端 如果以前已配置过,可点击按钮 “使用现有机器组”
- 如下图是,创建机器组的操作页面
可以根据底部文档指导,填写相关信息
④. 机器组配置
- 将需要使用的机器组,选中到右边
点击下一步
【提示】: 机器组心跳检查,可能会出现失败的情况,详情见附录
⑤. Logtail 配置
- 根据页面提示,填写相关信息
【注意】
1、这里填入的便是,nginx.conf 文件中的配置信息:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for" "$request_time" "$http_app_key" "$args"';要求 nginx 服务器中 nginx.conf文件的配置字段log_format ,也如上所示,保证配置的统一性
2、 对应的日志样例如下
(建议从 服务器的 nginx 访问日志中获取,同时还能检验是否对应正确)
- 查询分析配置
顺利的话,会出现如下信息
☞ 第二步、配置仪表盘与创建图表
- 以我的实际操作为例
切换左侧导航栏的 仪表盘图标,然后创建一个 仪表盘 - 然后点击右侧按钮 “新建图表”
选取 图表类型为 “表格”
然后根据下图指导,设置标题、选取 logstore、填写查询语句、预览 …
当前我使用的都是默认配置,具体样式,可根据右侧指导栏 进行 属性配置
核心操作便是 sql 查询语句的确认,可以通过帮助文档,学习借鉴,从而构造出更符合要求的图表
- 预览效果达到要求后,点击 确定,并保存
如果需要对已保存的图表进行修改,先点击仪表盘的 编辑按钮,才能再点击图表的编辑
分析
- 对于生成的 图表,我们后期可以点击查看分析详情
- 通过自定义查询语句,定位耗时较长的请求
分析问题,优化访问性能
总结
- 整体操作过程中需要注意的几点如下:
其他的图片配置,大同小异,重要的是 设计 查询语句 和选定 图表类型 ,多加摸索 …
▼ 附录
①. nginx 配置参数 log_format
对于 参数的解释,可以参考文章:【nginx 访问日志 access_log】
- 当前,我对 nginx 服务器的配置为:
②. 机器组心跳检查
- 机器组心跳检查可能会 失败,
根据提示进行排查,阿里云文档 - 【Logtail机器组无心跳排查思路】 - 如果显示 心跳OK ,继续下一步