小微企业阿里云最佳实践系列(四):云监控与 SLS 日志服务

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 本博文主要为大家介绍阿里云提供的基础云监控、日志服务两大产品,通过云监控与日志服务可以做到每天不需要时刻关注所开发的软件系统、服务器、数据库等健康状况就掌握异常情况,并能及时进行应急响应和处理。

关联博文
小微企业阿里云最佳实践系列(一):ECS 服务器与 RDS 数据库
小微企业阿里云最佳实践系列(二):RDS 数据库与DMS 数据库管理(数据管理)
小微企业阿里云最佳实践系列(三):OSS 图片存储(对象存储)与 CDN 内容分发
小微企业阿里云最佳实践系列(四):云监控与 SLS 日志服务
小微企业阿里云最佳实践系列(五):零成本使用 DMS 数据库实验室学习研究
小微企业阿里云最佳实践系列(专辑)

概述

阅读对象

本博文主要写给创业团队、技术团队人数 < 5 人、没有专业运维等小微企业作为参考,需要掌握基础的服务器管理、软件开发等经验。

博文主要内容

本博文主要为大家介绍阿里云提供的基础云监控、日志服务两大产品,通过云监控与日志服务可以做到每天不需要时刻关注所开发的软件系统、服务器、数据库等健康状况就掌握异常情况,并能及时进行应急响应和处理。

云监控

官方介绍

云监控服务可用于收集获取阿里云资源的监控指标或用户自定义的监控指标,探测服务可用性,以及针对指标设置警报。使您全面了解阿里云上的资源使用情况、业务的运行状况和健康度,并及时收到异常报警做出反应,保证应用程序顺畅运行。

SLS 日志服务

官方介绍

日志服务(Log Service,简称LOG/原SLS)是针对实时数据一站式服务,在阿里集团经历大量大数据场景锤炼而成。
提供日志类数据采集、消费、投递及查询分析功能,全面提升海量日志处理/分析能力,服务智能研发/运维/运营/安全等场景。

两款产品主要解决问题

  • 天然集成,使用阿里云相关产品时云监控会默认设置报警规则,在出现异常例如 CPU 使用率过高时自动触发报警;
  • 数据可视化,可以通过云监控监控大盘实时掌握各个云资源或应用的健康状况、性能指标等;
  • 监控数据处理,可以通过编写数据收集脚本上传只云监控,并在控制台设置灵活的监控指标、纬度;
  • 灵活报警,可以按照企业的实际情况以及所监控的资源或应用级别灵活设置报警规则,例如一般异常报警通知到开发组,重要报警通知到项目经理或技术总监等;
  • 全托管服务,日志服务无需自建存储,通过 Agent 收集上传日志即可,不用担心服务器磁盘被日志写满导致应用系统异常;
  • 生态丰富,无论是服务端应用(如:Java、PHP)还是浏览器应用(例如:JavaScript)等,均可以接入日志服务进行统一管理;
  • 实时性强,写入即可消费,无需按照以往还需要登录服务器查看日志文件,使用日志服务可以在控制台实时查看和分析日志;

如何选择使用

  • 云监控使用基础免费版即可体验丰富的功能,根据企业实际情况也可以选择付费版。
  • 日志服务目前按量付费,也有免费额度,使用起来整体费用都比较少,几乎可以忽略不计。

案例一、云监控实时检测网站状态,宕机时第一时间响应和处理

1、控制台打开云监控,进入站点管理
image
2、点击右侧的新建监控任务
image
3、填写所监控的网址并设置监控频率,这里我们为了让监控更灵敏,设置 1分钟
image
4、设置报警规则
image
这里的可用性指一个探测周期内失败率,正常情况下为 100%,我们这里设置 90% 或 95% 即可,平均响应时间指超过多少毫秒无法打开网站即判定为失败,这里我们可以设置为 3000 毫秒,连续阀值这里,有时网站因为网络抖动的原因导致探测点无法打开,这里设置为 1 的话,每次探测点探测失败均会触发报警,这里我们为了避免误报可以设置为 3 次,基本上 3 次均探测失败就不仅仅是网络抖动原因,而是网站确实无法打开了。
5、设置好之后点击创建按钮即可完成,这时我们可以通过列表直观的查看所监控的站点健康状况
image

案例二、日志服务收集 nginx 访问日志以及分析

1、控制台打开日志服务,未开通日志服务时需要开通后操作,点击创建 Project
image
这里所属地域可以根据自己的 ECS 服务器或者所收集日志的目标最近区域选择
2、创建好 Project 之后还需要创建 Logstore 存储日志
image
image
如果应用的日志比较少,这里的 Shard 数据可以选择 1
3、创建好 Logstore 之后进入数据接入环节
image
image
根据实际情况选择对应的接入方式,这里我们使用 nginx 的访问日志做教程,这里选择 nginx 访问日志即可
4、填写配置信息,我们需要知道服务器上 nginx 日志存储的位置,例如存放于 /usr/local/nginx/logs 目录中,我们需要收集 access.log 日志
image
这里的路径配置这样填写即可
image
5、打开 nginx.conf 找到 log_format 配置,如图:
image
填入 NGINX 日志格式中,这里会自动生成 NGINX 键名称
image
检查无误后点击下一步
6、应用到机器组,这里我们将需要添加的服务器加入到一个机器组中进行批量监控
image
机器组标识选择 IP 地址,并且填写 ECS 服务器内网 IP 地址
image
7、添加完成之后确认机器状态正常
image
若检测异常,参考文档进行解决:https://help.aliyun.com/document_detail/51458.html
8、再次点击 Logtail 配置,进行未完成的应用到机器组的操作
image
选择我们刚添加的机器组
image
应用到机器组即可完成
9、配置完成后回到日志库,点击预览确保我们接入正确,并且日志服务收集到 nginx 的访问日志
image
如果有这样的数据,表明我们的所有配置都是没有问题的
image
10、接下来我们可以点击查看查看 nginx 的访问日志,这样就不需要登录服务器查看访问日志
image
image
11、日志服务高级玩法:根据查询脚本生成报表
请求报表
image
原始脚本
image
供复制参考

request_uri:/api/* | select request_uri, count(1) count, round(avg(request_time), 2) request, round(avg(response_time),2) response group by request_uri order by count desc limit 10

总结

通过云监控、日志服务灵活搭配可以创造我们很多想要的功能,这些需要大家深入研究学习和使用,同时也欢迎大家讨论

版权

版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)

原创作者 10086@xiaoi.me 发表于阿里云·云栖社区:https://yq.aliyun.com/users/y4epujtm5wye6

转载请保留原文链接以及版权信息

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
23天前
|
运维 Prometheus 监控
基于阿里云可观测产品构建企业级告警体系的通用路径与最佳实践
本文围绕企业级告警体系构建展开,探讨了监控与告警在系统稳定性中的重要作用。通过梳理监控对象、分析指标、采集数据及配置规则等环节,提出告警体系建设的通用流程,并针对多平台告警、误报、告警风暴等问题提供解决思路。结合阿里云可观测产品,分享了某电商企业的实践案例,展示了如何通过标签规范、日志标准和统一管理平台实现高效告警处置,为构建全面且实用的告警体系提供了参考指南。
|
2月前
|
监控 Java 应用服务中间件
Tomcat log日志解析
理解和解析Tomcat日志文件对于诊断和解决Web应用中的问题至关重要。通过分析 `catalina.out`、`localhost.log`、`localhost_access_log.*.txt`、`manager.log`和 `host-manager.log`等日志文件,可以快速定位和解决问题,确保Tomcat服务器的稳定运行。掌握这些日志解析技巧,可以显著提高运维和开发效率。
139 13
|
2月前
|
缓存 Java 编译器
|
3月前
|
存储 缓存 关系型数据库
图解MySQL【日志】——Redo Log
Redo Log(重做日志)是数据库中用于记录数据页修改的物理日志,确保事务的持久性和一致性。其主要作用包括崩溃恢复、提高性能和保证事务一致性。Redo Log 通过先写日志的方式,在内存中缓存修改操作,并在适当时候刷入磁盘,减少随机写入带来的性能损耗。WAL(Write-Ahead Logging)技术的核心思想是先将修改操作记录到日志文件中,再择机写入磁盘,从而实现高效且安全的数据持久化。Redo Log 的持久化过程涉及 Redo Log Buffer 和不同刷盘时机的控制参数(如 `innodb_flush_log_at_trx_commit`),以平衡性能与数据安全性。
106 5
图解MySQL【日志】——Redo Log
|
2月前
|
运维 Prometheus 监控
基于阿里云可观测产品构建企业级告警体系的通用路径与最佳实践
基于阿里云可观测产品构建企业级告警体系的通用路径与最佳实践
|
2月前
|
SQL 存储 关系型数据库
简单聊聊MySQL的三大日志(Redo Log、Binlog和Undo Log)各有什么区别
在MySQL数据库管理中,理解Redo Log(重做日志)、Binlog(二进制日志)和Undo Log(回滚日志)至关重要。Redo Log确保数据持久性和崩溃恢复;Binlog用于主从复制和数据恢复,记录逻辑操作;Undo Log支持事务的原子性和隔离性,实现回滚与MVCC。三者协同工作,保障事务ACID特性。文章还详细解析了日志写入流程及可能的异常情况,帮助深入理解数据库日志机制。
207 0
|
2月前
|
Web App开发 监控 网络协议
网络分析与监控:阿里云拨测方案解密
网络分析与监控:阿里云拨测方案解密
|
3月前
|
存储 关系型数据库 MySQL
图解MySQL【日志】——Undo Log
Undo Log(回滚日志)是 MySQL 中用于实现事务原子性和一致性的关键机制。在默认的自动提交模式下,MySQL 隐式开启事务,每条增删改语句都会记录到 Undo Log 中。其主要作用包括:
118 0
|
2月前
|
数据采集 运维 监控
数据采集监控与告警:错误重试、日志分析与自动化运维
本文探讨了数据采集技术从“简单采集”到自动化运维的演进。传统方式因反爬策略和网络波动常导致数据丢失,而引入错误重试、日志分析与自动化告警机制可显著提升系统稳定性与时效性。正方强调健全监控体系的重要性,反方则担忧复杂化带来的成本与安全风险。未来,结合AI与大数据技术,数据采集将向智能化、全自动方向发展,实现动态调整与智能识别反爬策略,降低人工干预需求。附带的Python示例展示了如何通过代理IP、重试策略及日志记录实现高效的数据采集程序。
114 7
数据采集监控与告警:错误重试、日志分析与自动化运维
|
2月前
|
Prometheus Kubernetes 监控
Kubernetes监控:Prometheus与AlertManager结合,配置邮件告警。
完成这些步骤之后,您就拥有了一个可以用邮件通知你的Kubernetes监控解决方案了。当然,所有的这些配置都需要相互照应,还要对你的Kubernetes集群状况有深入的了解。希望这份指南能帮助你创建出适合自己场景的监控系统,让你在首次发现问题时就能做出响应。
103 22

相关产品

  • 日志服务