阿里云Kubernetes Ingress组件除了提供外部可访问的URL、负载均衡、SSL、基于名称的虚拟主机外,还支持将所有您的HTTP请求日志记录到标准输出中。日志服务推出Ingress日志中心功能,用于分析和监控Ingress后端对接的服务状态。本文介绍Ingress日志中心相关的功能说明、功能优势、资产说明、费用说明、使用限制等信息。

功能说明

Ingress日志中心基于实时访问日志进行自动聚合,并提供智能巡检、实时告警等功能,详细功能如下:
  • 实时访问日志的采集、存储、查询、分析。
  • 基于原始访问日志实时提取出各类指标信息,包括PV、请求成功率、平均延迟、P50/P99/P9999延迟、出入流量等。并支持多个维度组合,包括host、status、url。
  • 丰富可视化报表,包括监控大盘、异常事件、运营大盘等,支持报表邮件、钉钉群订阅。
  • 提供智能巡检功能,支持全局以及Service粒度巡检,并支持可视化报表中直接标注异常点。
  • 自定义告警配置,告警通知直接对接消息中心、邮件、短信、语音(电话)、钉钉,并支持对接自定义WebHook。
功能说明

功能优势

  • 简单:一站式开通、中心化使用,无需关心日志收集、存储、计算、可视化等问题,将开发、运维人员从日志处理的繁琐耗时中解放出来,将更多的精力集中到业务开发和技术探索上去。
  • 海量:访问日志与Ingress请求PV成正比,数据规模很大,处理访问日志需要考虑性能和成本问题。日志中心可自定配置预聚和功能,实时计算聚合指标,计算后的聚合结果可降低几个数量级,使查询速度大大提升。
  • 实时:DevOps、监控、报警等场景要求日志数据的实时性。结合日志服务强大的大数据计算能力,秒级分析处理实时产生的日志。
  • 弹性:可任意设置日志存储周期。Logstore容量可动态伸缩满足业务增长需求。
  • 智能:基于达摩院智能AIOps算法,提供各类指标自动巡检功能,有助于更快、更准确的发现并定位问题。

资产说明

所有资产都在您选择的Project下,Project内的资产如下:
  • Logstore
    • 访问日志Logstore用于存储Kubernetes Ingress访问日志,该Logstore为您自定义创建的Logstore。
      • 该Logstore默认开启索引,并配置部分字段的索引。您可以增加索引字段,修改索引后只对新数据生效。
      • 您可以自定义修改日志存储时间,详情请参见修改Logstore配置
    • 巡检结果Logstore用于存储巡检结果。开通日志中心功能后,自动生成该专属Logstore,其名称为访问日志Logstore名称-metrics-result。
    说明
    • 请勿删除Kubernetes Ingress访问日志相关的Logstore,否则将无法正常采集日志到日志服务。
    • 请勿删除访问日志Logstore中的部分字段的索引,否则指标转换会失败。
  • Metricstore

    监控指标Metricstore用于存储聚和后的指标信息。开通日志中心功能后,自动生成该专属Metricstore,其名称为访问日志Logstore名称-metrics。

    说明 监控指标Metricstore存储的是聚合后的指标,数据量相比原始访问日志大大降低,非常适用于长期存储。
  • 聚合规则
    规则名称 聚合时间粒度 聚合维度 生成指标名
    total 10秒 total
    • pv
    • body_bytes_sent_avg
    • body_bytes_sent_sum
    • request_length_avg
    • request_length_sum
    • upstream_response_time_avg
    • upstream_response_time_p50
    • upstream_response_time_p90
    • upstream_response_time_p99
    • upstream_response_time_p9999
    • request_time_avg
    • request_time_p50
    • request_time_p90
    • request_time_p99
    • request_time_p9999
    host 10秒 host
    • pv:host
    • body_bytes_sent_avg:host
    • body_bytes_sent_sum:host
    • request_length_avg:host
    • request_length_sum:host
    • upstream_response_time_avg:host
    • upstream_response_time_p50:host
    • upstream_response_time_p90:host
    • upstream_response_time_p99:host
    • upstream_response_time_p9999:host
    • request_time_avg:host
    • request_time_p50:host
    • request_time_p90:host
    • request_time_p99:host
    • request_time_p9999:host
    host_status 10秒 host+status
    • pv:host:status
    • body_bytes_sent_avg:host:status
    • body_bytes_sent_sum:host:status
    • request_length_avg:host:status
    • request_length_sum:host:status
    • upstream_response_time_avg:host:status
    • upstream_response_time_p50:host:status
    • upstream_response_time_p90:host:status
    • upstream_response_time_p99:host:status
    • upstream_response_time_p9999:host:status
    • request_time_avg:host:status
    • request_time_p50:host:status
    • request_time_p90:host:status
    • request_time_p99:host:status
    • request_time_p9999:host:status
    host+status+method+upstream_name+upstream_status+url 10秒 host+status+method+upstream_name+upstream_status+url
    • pv:host:status:method:upstream_name:upstream_status:url
    • body_bytes_sent_avg:host:status:method:upstream_name:upstream_status:url
    • body_bytes_sent_sum:host:status:method:upstream_name:upstream_status:url
    • request_length_avg:host:status:method:upstream_name:upstream_status:url
    • request_length_sum:host:status:method:upstream_name:upstream_status:url
    • upstream_response_time_avg:host:status:method:upstream_name:upstream_status:url
    • upstream_response_time_p50:host:status:method:upstream_name:upstream_status:url
    • upstream_response_time_p90:host:status:method:upstream_name:upstream_status:url
    • upstream_response_time_p99:host:status:method:upstream_name:upstream_status:url
    • upstream_response_time_p9999:host:status:method:upstream_name:upstream_status:url
    • request_time_avg:host:status:method:upstream_name:upstream_status:url
    • request_time_p50:host:status:method:upstream_name:upstream_status:url
    • request_time_p90:host:status:method:upstream_name:upstream_status:url
    • request_time_p99:host:status:method:upstream_name:upstream_status:url
    • request_time_p9999:host:status:method:upstream_name:upstream_status:url
  • 巡检规则
    规则名称 开启状态 巡检算法 巡检指标
    total 默认开启 Time2Graph
    • pv
    • body_bytes_sent_avg
    • body_bytes_sent_sum
    • request_length_avg
    • request_length_sum
    • upstream_response_time_avg
    • request_time_avg
    host 默认开启 Time2Graph
    • pv:host
    • body_bytes_sent_avg:host
    • body_bytes_sent_sum:host
    • request_length_avg:host
    • request_length_sum:host
    • upstream_response_time_avg:host
    • request_time_avg:host
    host_status 默认关闭 Time2Graph
    • pv:host:status
    • body_bytes_sent_avg:host:status
    • body_bytes_sent_sum:host:status
    • request_length_avg:host:status
    • request_length_sum:host:status
    • upstream_response_time_avg:host:status
    • request_time_avg:host:status
    host_status_method_proxy_upstream_name_upstream_status_url 默认关闭 Time2Graph
    • pv:host:status:method:upstream_name:upstream_status:url
    • body_bytes_sent_avg:host:status:method:upstream_name:upstream_status:url
    • body_bytes_sent_sum:host:status:method:upstream_name:upstream_status:url
    • request_length_avg:host:status:method:upstream_name:upstream_status:url
    • request_length_sum:host:status:method:upstream_name:upstream_status:url
    • upstream_response_time_avg:host:status:method:upstream_name:upstream_status:url
    • request_time_avg:host:status:method:upstream_name:upstream_status:url
  • 专属仪表盘
    仪表盘名称 关联的Logstore、Metricstore 说明
    运营大盘 访问日志Logstore名称 展示用户请求相关的信息,包括PV、UV、移动端分布、国家/省/市分布等。
    说明 此部分信息基于原始访问日志全量计算,数据量超大的情况下会有一定延迟。
    概览 访问日志Logstore名称-metrics 展示Kubernetes总体的监控信息,包括PV、失败率、5XX比例、状态码分布、流量等。
    监控大盘 访问日志Logstore名称-metrics 支持以host、url、status等维度过滤出实例详细的监控信息。
    异常事件
    • 访问日志Logstore名称-metrics
    • 访问日志Logstore名称-metrics-result
    展示流式巡检算法检测出的Service粒度异常信息,包括异常统计以及具体指标上异常的实时显示。

费用说明

日志服务根据存储空间、读取流量、请求数量、数据加工、数据投递等进行收费,详情请参见日志服务产品定价

使用限制

  • 必须成功解析Ingress日志后才能进行时序转换规则配置和巡检配置。对于自定义日志格式的Ingress访问日志,需手动配置解析规则解析日志,对应的日志字段名称需要符合默认的字段命名规则。
  • 日志中心配置完成后只对新产生的日志生效,存量日志并不会转换成指标信息。