一、 概述
阿里云发布的产品种类齐全,今天让我们一起来了解下日志服务(Log Service,简称LOG)这款产品吧。
什么是日志服务呢?
日志服务是针对日志场景的平台化服务。无需开发就可以快速完成日志收集、分发、投递与查询, 适用于日志中转、监控、性能诊断、日志分析、审计等场景。
那么,日志服务有什么优势呢?
- 日志服务使用便捷。告别复杂配置,5分钟接入,通过API/Web管理上万设备,原生Agent支持,操作简单。
- 日志服务稳定可靠。三副本可靠性,48小时内任意时段消费,高可用设计,可依赖服务,支持多租户,支持RAM。
- 日志服务丰富上下游。上游:Linux、Windows,API、SDK,下游: SDK/API、ODPS 、OSS、EMR(Spark/MR)、Storm。
- 日志服务实时消费日志,提供Spark/Storm Library, 多语言SDK;48小时内消费任意时刻数据。日志服务与ODPS/OSS等产品无缝对接。并且还有实时、灵活(支持查询语法)的查询功能。
日志服务(Log Service,Log)是针对日志垂直场景的一站式服务,在阿里巴巴集团内部被广泛使用。目前提供如下功能:
- 日志中枢(LogHub):通过Agent/API实时收集、订阅、消费日志数据。
- 日志投递(LogShipper):将日志定时投递至存储类服务(ODPS/OSS)。
- 日志查询(LogSearch):提供基于时间、关键词查询用以定位及分析问题。
其中日志中枢为基础功能,用户可根据需求选择日志投递及日志查询功能。日志服务提供健全API及Web控制台方便用户使用。
日志服务典型特性介绍:
https://www.aliyun.com/product/sls/?spm=5176.383518.3.48.E1bQuG
二、 技术点(日志服务五大热点技术问题分析)
在上一篇文章中,我们为大家介绍日志服务的概况,日志服务(Log Service,简称LOG)是针对日志场景的平台化服务。无需开发就可以快速完成日志收集、分发、投递与查询, 适用于日志中转、监控、性能诊断、日志分析、审计等场景。那在使用过程中,经常遇到的热门技术问题有哪些呢?
基本问题:
https://help.aliyun.com/document_detail/sls/faq/basic.html?spm=5176.docsls/best-practices/userscenario.6.193.dj82Q1
基于日志服务的监控系统:
https://help.aliyun.com/document_detail/sls/best-practices/How%20to%20implement%20a%20monitor%20system.html?spm=5176.docsls/best-practices/userscenario.6.208.xgaXg8
日志查询:
https://help.aliyun.com/document_detail/sls/faq/log-query.html?spm=5176.docsls/faq/log-input.6.197.C0XWC4
日志服务监控指标:
https://help.aliyun.com/document_detail/sls/faq/logmonitor.html?spm=5176.docsls/faq/log-query.6.200.rQQy5i
典型应用场景:
https://help.aliyun.com/document_detail/sls/best-practices/userscenario.html?spm=5176.docsls/faq/logmonitor.6.204.dChOdV
SLS-海量日志数据管理利器:
https://yq.aliyun.com/articles/8063
希望上面的内容,能够对大家有所帮助。
三、 体验(日志服务之使用SLS在云端快速精确定位应用错误)
作为一个程序猿,调查应用错误可真不是一个轻松活,一出问题,经常要上机器查看各种日志,对于复杂应用,这个过程就更痛苦。比如,应用前端架设Apache服务,后端是各种核心逻辑,使用Mysql做信息存储,这些角色还部署在多台机器上。调查问题,免不了打开多个机器的登录窗口,在不同目录间切换,grep日志关键词查找线索,再切换再查找,几圈下来,头已经有点晕,打开日志文件看看细节,一失手,vim一个上百MB文件…心中已是各种马在奔腾…
自从用上了阿里云的简单日志服务,突然发现调查问题变得轻松起来。向各位看官汇报一下,如何在云端,快速定位应用各种错误。
首先,先来看前端机器是否有错误,自从将前端访问日志收集放到SLS上后,再不用一台台登录前端机。选择Apache访问日志的Category,直接在控制台输入“500”,就可查看http 状态为500的错误日志。真有几次这样的错误,这些访问请求失败了。
赶紧去看看后端应用层,是什么异常导致的,返回category列表,重新选择后端日志”ServerLog”这个Category,输入” ERROR”,把所有ERROR级别的日志全部查出来。
这么多错误,真要好好看看都是怎么回事。想到核心业务部署在10.242.78.62这个机器上,重点关注这个机器上有没有什么错误,输入”ERROR and 10.242.78.62”进行精确定位。
还好,错误数下降了一个数量级。在显示的第一页日志上,看上去都是用户输入参数错误,包含了非utf-8字符。往后翻了几页,也是同样的错误,那先把这些参数错误过滤掉再说,输入 “ERROR and 10.242.78.62 not UTF-8” 进行过滤。
世界立马清净了,只有几个错误,原来都是写数据库出现错误,仔细回想一下,原来前2天修改了数据库表的schema,应用程序处还有一个地方忘记修改,由于这个表平时访问少,这个问题一直没有被发现。快速定位到原因后,这个bug的修复分分钟就搞定。
有了简单日志服务,调查问题,可以直接在云端完成,免去了登录机器的烦恼,通过简单日志服务提供的自定义时间段,以及关键词 AND、NOT、OR的组合查,可以方便地定位各种异常信息,大大提高了本码农的debug的效率。
以上就是我使用日志服务的一些体验,希望大家有所收获。
如果您想详细了解日志服务,请访问:
https://bbs.aliyun.com/read/162988.html?spm=5176.bbsl237.0.0.o7EwmH
日志服务(原SLS)新功能发布(5)--使用Logstash接入数据:
https://yq.aliyun.com/articles/7552?spm=5176.100240.searchblog.8.DzaCFE