`
骑猪逛街666
  • 浏览: 142230 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

日志服务(原SLS)_2.5发布:支持SQL进行日志实时分析

阅读更多

摘要: 日志服务在2.5版本中提供 **SQL 实时统计分析功能** ,能够在秒级查询的基础上支持实时统计分析

日志服务(原SLS)是针对大规模日志实时存储与查询服务,半年内我们逐步提供文本、数值、模糊、上下文等查询能力。在2.5版本中日志服务提供 SQL 实时统计分析功能 ,能够在秒级查询的基础上支持实时统计分析。

支持SQL包括:聚合、Group By(包括Cube、Rollup)、Having、排序、字符串、日期、数值操作,以及统计和科学计算等(参见分析语法)。

如何使用?

例如,对访问日志(access-log)查询 “状态码=500,Latency>5000 us,请求方法为Post开头”所有日志:

Status:500 and Latency>5000 and Method:Post*

在查询后增加管道操作符”|“,以及SQL后(不需要from 和 where,既从当前Logstore查询,where条件在管道前):

Status:500 and Latency>5000 and Method:Post* | select count(*) as c , avg(Latency) as latency_avg, sum(Inflow) as sum_inflow, ProjectName Group by ProjectName order by c Desc limit 10

可以在控制台上获得结果(包括一些基本图表帮助理解):
p1

为了获得更好体验,我们对SQL执行数据量做了限制(参考SQL分析语法最后部分)。在机房扩容后和下一步优化后(大约2个月),我们会放开该限制,敬请期待。

案例(线上日志实时分析)

​ 在几百台机器、十几个应用程序、面向万级用户定位问题是非常有挑战的,需要在多维度及条件变量进行实时排查。例如在网络攻击中,攻击者会不断地变化来源IP、目标等,让我们无法实时做出反应。

​ 这类场景不光需要海量处理能力,还需要非常实时的手段,SLS+LogHub可以确保日志从服务器产生到被查询在3秒以内(99.9%情况),让你永远快人一步。

例如在监控发现线上有非200的访问错误产生,一般老司机的调查方法如下:

  1. 该错误影响了多少用户? 是个体,还是全局

    Status in (200 500] | Select count(*) as c, ProjectName group by ProjectName
    
  2. 确定大部分都是从Project为“abc”下引起的,究竟是哪个方法触发的?

    Status in (200 500] and ProjectName:"abc"| Select count(*) as c, Method Group by Method
    
  3. 我们可以获取到,都是写请求(Post开头)触发,我们可以将查询范围缩小,调查写请求的延时分布

    Status in (200 500] and ProjectName:"abc" and Method:Post* | select numeric_histogram(10,latency)
    
  4. 我们可以看到,写请求中有非常高的延时。那问题变成了,这些高延时是如何产生的

    1. 通过时序分析,这些高请求延时是否在某个时间点上分布,可以进行一个时间维度的划分

      Status in (200 500] and ProjectName:"abc" and Method:Post* |select  from_unixtime( __time__ - __time__ % 60) as t,
           truncate (avg(latency) ) ,
           current_date  
           group by   __time__ - __time__ % 60  
           order by t  desc 
           limit 60
      
    2. 通过机器Ip来源看,是否分布在某些机器上

      Status in (200 500] and ProjectName:"abc" and Method:Post* and Latency>150000 | select count(*) as c, ClientIp Group by ClientIp order by c desc
      
  5. 最终大致定位到了延时高的机器,找到RequestId,可以顺着RequestId继续在SLS中进行查询与搜索

  6. 这些操作都可以在控制台/API 上完成,整个过程基本是分钟级别

什么场景适合使用SLS?

和数据仓库、流计算等分析引擎相比,有如下特点:

  • 针对结构化、半结构化数据
  • 对实时性、查询延时有较高要求
  • 数据量大,查询结果集合相对较小

p2

​ 除此之外SLS与 MaxCompute、OSS(E-MapReduce、Hive、Presto)、TableStore、流计算(Spark Streaming、Stream Compute)、Cloud Monitor等已打通,可以方便地将日志数据以最舒服姿势进行处理。

​ 更多的内容请关注产品主页,欢迎关注存储服务公众,也欢迎加入VIP钉钉群

本文为云栖社区原创内容,未经允许不得转载,如需转载请发送邮件至yqeditor@list.alibaba-inc.com
分享到:
评论

相关推荐

    aliyun_android_sdk

    阿里云Android SDK是一款专为Android开发者设计的工具包,它提供了与阿里云服务进行交互的各种API,方便开发者在Android平台上构建高效、稳定的应用程序。在本文中,我们将深入探讨这款SDK的主要功能、如何使用以及...

    Laravel开发-laravel-sls

    这时,阿里云SLS作为一个高性能、低成本的日志服务,成为了理想的选择。 首先,要开始使用laravel-sls,你需要在你的Laravel项目中安装相应的包。通过Composer,你可以执行以下命令来添加依赖: ```bash composer ...

    SLS_Remote_Assistant

    SLS_Remote_Assistant

    SLS94_SR3_2781

    SLS94_SR3_2781 SLS94_SR3_2781 SLS94_SR3_2781

    aliyun_sls:阿里云简单日志服务SLS接口的Ruby库和命令行工具

    简单日志服务(Simple Log Service,简称SLS) 是针对日志收集、存储和查询的平台化服务。服务提供各种类型日志的实时收集,平台化存储及实时查询海量的日志。并可以将日志归档至ODPS,以利用ODPS做大数据分析。除了...

    mapillary_sls:枫叶街道级序列数据集

    2020-07-14-已发布补丁v1.1,该补丁修复了一些损坏的图像-如果您已请求数据,则将获得下载该链接的链接。 描述 Mapillary街道级序列(MSLS)是包含160万个街道级图像的大规模长期位置识别数据集。 :down_arrow: ...

    sls:日志服务

    SLS提供SQL-like查询语言,允许用户对海量日志进行实时查询和分析,支持复杂的数据过滤、聚合、排序等操作。这种能力对于快速定位问题、监控系统状态以及业务数据分析非常有用。 **4. 图形化展示** SLS可以与阿里...

    89905_SLS_HC74.pdf

    ### 关于 k89905_SLS_HC74 的详细介绍 #### 一、概述 本文档主要介绍了 k89905_SLS_HC74(即SL74HC74)这款双D触发器的基本特性和技术参数。SL74HC74是一款高性能硅栅CMOS双D触发器,其引脚排列与传统的LS/ALS74...

    SLS94_2760

    【标题】"SLS94_2760"指的是一个特定的条形码打印程序,这是一款专门设计用于生成和打印条形码的应用软件。在IT领域,条形码打印程序是企业、仓库和零售业等环境中不可或缺的工具,因为它们能够高效地追踪和管理库存...

    sls_course:学习如何使用AWS Lambda函数

    3. **日志管理**: 使用`context.logStreamName`记录Lambda执行过程中的信息,以及如何在CloudWatch Logs中查看和分析这些日志。 4. **错误处理**: 学习如何优雅地处理错误,确保Lambda函数即使在遇到问题时也能正确...

    serverless-local-schedule::high_voltage::world_map::alarm_clock:在本地时间安排基于AWS CloudWatch Event的调用(支持DST!)

    安装: sls plugin install -n serverless-local-schedule例如: functions : hello : handler : handler.hello events : - schedule : rate : cron(0 10 * * ? *) timezone : America/New_York 它通过将其转换为6...

    sls-dev-tools:无服务器世界的开发工具-问题,PR和:white_medium_star:欢迎光临!

    sls-dev-tools 无服务器世界的开发人员工具-考虑使用Chrome Dev Tools,但无服务器。 :laptop_computer: 快速的终端反馈(不再跳转到AWS控制台) :bar_chart: 目标指标使您能够构建快速有效的应用程序 :keyboard...

    阿里云 专有云企业版 V3.9.0 日志服务 产品简介 20191017.pdf

    日志服务(Log Service,原SLS)是一个全托管的日志大数据平台,它支持实时数据接入、消费和分析。这个服务可以帮助用户轻松地收集各种应用、系统、设备产生的日志数据,提供实时检索、监控、报警以及数据导出等功能...

    SLS%26BT_Keygen+9.01

    SLS%26BT_Keygen+9.01

    阿里云 专有云企业版 V3.8.2 日志服务 产品简介 20200416.pdf

    - **日志服务(Log Service,原SLS)**:是阿里云提供的一种全托管的日志大数据处理服务,能够实时接收、存储、查询和分析来自各种来源的日志数据。 - **日志收集**:支持多种数据源的日志采集,如ECS、容器服务...

    服务器日志

    4. **云服务**:如阿里云日志服务SLS,提供大规模日志处理和分析能力。 在"光年蜘蛛文件分析"这个场景中,可能涉及到的是对搜索引擎爬虫活动的专项分析。通过对服务器日志中的用户代理进行筛选,我们可以识别出如...

    Sls.zip_sls 3gpp_zip

    标题中的"Sls.zip_sls 3gpp_zip"暗示了这是一个与3GPP(第三代合作伙伴计划)相关的压缩文件,其中包含了一些与SLS(Location Services)标准相关的ASN.1(抽象语法标记一号)文件。ASN.1是一种在通信协议中定义数据...

    阿里云 专有云Enterprise版 V3.5.0 日志服务 产品简介 - 20180710.pdf

    日志服务,全称为SLS(Serverless Log Service),是一个无服务器日志处理平台,支持实时数据流处理和离线大数据分析。它提供了强大的日志收集能力,可以对接各种数据源,如应用程序日志、系统日志、网络设备日志等...

    基于VHDL语言的交通灯控制器设计.pdf

    基于VHDL语言的交通灯控制器设计 ...本设计基于VHDL语言,使用MAX+plus II 10进行程序的编写、编译、仿真以及下载,使用EPM7128SLS84-6芯片实现交通灯控制器的设计,能够满足交通管理系统的需求。

    阿里云 专有云企业版 V3.12.0 日志服务 开发指南 20200617.pdf

    该文档旨在帮助开发者和管理员理解和利用日志服务进行数据收集、存储、查询、分析以及消费。以下是该文档中的关键知识点: 1. **日志服务简介**:日志服务(Log Service,简称SLS)是阿里云提供的一种全托管的日志...

Global site tag (gtag.js) - Google Analytics