今日PV

nginx日志查看今日的PV和昨日的对比,先通过count函数计算总的pv,再用compare函数得出今日的pv和昨日的同比。

通过单值图进行展示,显示值为20.381Mil,对比值为-2%

 *   |
select
diff [] as today,
round((diff [] -1.0) * 100, 2) as growth
FROM
(
SELECT
compare(pv, 86400) as diff
FROM
(
SELECT
COUNT( 1 ) AS pv
FROM
log
)
)

pv、uv展示

展示tomcat访问的pv、uv随时间变化的曲线

使用time_series 函数根据日志时间做两分钟对齐,然后对时间聚合计算COUNT即访问数量,使用approx_distinct(remote_addr) 计算 remote_addr去重之后的数量,然后跟据时间排序展示。

图中x轴为时间,y轴表示数量,两条线分别是uv、pv的情况。

 * |
select
time_series(__time__,'2m','%H:%i','') as time,
COUNT(1) as pv,
approx_distinct (remote_addr) as uv
GROUP BY
time
ORDER BY
time
LIMIT
1000

tomcat错误请求占比

先在sql内部获取到请求status超过400的错误请求数量,以及总的请求数量,然后再外部计算比值,

展示时使用单值图中的刻度盘,单位改为 %

 * |
select
round((errorCount * 100.0 / totalCount), 2) as errorRatio
from
(
select
sum(
case
when status >= 400 then 1
else 0
end
) as errorCount,
count(1) as totalCount
from
log
)

付费类型

展示付费类型各自产生的费用,

按时间月和计费方式聚合计算总费用,并按照时间排序,再使用case when为付费方式起中文别名进行展示。

图中使用流图的柱状图展示,聚合列是付费类型,x轴时间,y轴费用。

[     date_format(timestamp , format )   含义:把timestamp 转化成以 format 形式表示         ]

 source  :bill  |
select
date_format(day, '%Y-%m-%d') as day,
total, case
when Item = 'PayAsYouGoBill' then '后付费'
when Item = 'SubscriptionOrder' then '预付费'
when Item = 'Refund' then '退款'
when Item = 'Adjustment' then '调账'
else Item
end as "付费类型"
from(
select
date_trunc('month' , __time__) as day,
sum(PretaxAmount) as total,
Item
from
log
group by
day,
Item
order by
day
)
limit
10000

在线人数

在线人数,内层通过approx_distinct函数获取client_ip唯一数,然后通过compare获取昨天的uv以及昨天的比值。

结果使用单值图中的同比环比图展示,可以同时看到当时的uv及与昨天的比值。

 *  |
select
diff [],
diff [],
round (diff [] - 1,4) * 100
from
(
select
compare(uv, 86400) as diff
from
(
select
approx_distinct() as uv
from
log
)
)

统计具体时间  request_method

用date_trunc 把时间戳转化为时间格式,用map_agg 把时间做为key, 把request_method 作为value,  返回的是json格式

 |
select
map_agg(date_trunc('minute', __time__), request_method) as request_method

请求错误按客户端分布

先通过return_code 进行过滤,return_code大于400表示请求错误。然后通过user_agent 聚合计算请求数,按照请求数量倒叙排列,取前10个。

 return_code > 400 |
select
user_agent as "客户端版本",
count(*) as "错误次数"
group by
user_agent
order by
"错误次数" desc
limit
10

。。。后续继续总结,按每一个可视化来分布

SLS案例中心的更多相关文章

  1. SaltStack 部署案例 02

    远程执行 salt '*' state.sls apache '*':代表所有主机 state.sls :是一个模块 apache : 状态 ,表示需要部署的内容,后缀.sls YAML:三板斧 1. ...

  2. [DeviceOne开发]-轮播图和多模板的简单示例

    一.简介 这个例子是利用Slideview组件实现循环轮播的效果,同时这个slideview作为一个listview的最上面的一行数, 1. listview有2个模板,一个是以slideview为核 ...

  3. 小爬虫。爬取网站多页的通知标题并存取在txt文档里。

    爬取网页中通知标题的内容展示: this is  1  page!<精算学综合>科目考试参考大纲2016年上半年研究生开题报告评议审核结果公示[答辩]2016下半年研究生论文答辩及学位评定 ...

  4. Office 365系列 (1)概览:完整的云中Office

    Office365(以下简称O365)是一个集Office,企业邮箱,日历,日程管理,音视频会议 ,企业网盘 ,企业协作平台为一体的,旨在提高团队办公效率,减少基础设施投资和IT运维压力的解决方案.在 ...

  5. YourPHP笔记

    http://blog.sina.com.cn/s/blog_7c54793101016qq1.htm 基础认识: Ø  yourphp安装为子目录时不可以以"yourphp"为文 ...

  6. Mongodb 5节点异地两中心故障转移恢复测试案例

    Mongodb5节点异地两中心故障转移恢复测试案例 架构方式:5节点,主中心(2数据1仲裁),备中心(1数据1仲裁) 1基本情况 操作系统:Red Hat Enterprise Linux Serve ...

  7. SpringBoot开发案例Nacos配置管理中心

    前言 在开发过程中,通常我们会配置一些参数来实现某些功能,比如是否开启某项服务,告警邮件配置等等.一般会通过硬编码.配置文件或者数据库的形式实现. 那么问题来了,如何更加优雅的实现?欢迎来到 Naco ...

  8. Spring Boot 2.x 基础案例:整合Dubbo 2.7.3+Nacos1.1.3(配置中心)

    本文原创首发于公众号:Java技术干货 1.概述 本文将Nacos作为配置中心,实现配置外部化,动态更新.这样做的优点:不需要重启应用,便可以动态更新应用里的配置信息.在如今流行的微服务应用下,将应用 ...

  9. 数据可视化案例 | 如何打造数据中心APP产品

    意识到数据探索带来的无尽信息,越来越多的企业开始建立自有的数据分析平台,打造数据化产品,实现数据可视化. 在零售商超行业,沃尔玛"啤酒与尿布"的故事已不再是传奇.无论是大数据还是小 ...

随机推荐

  1. 12-21 Request庫

  2. PHP uasort() 函数

    ------------恢复内容开始------------ 实例 使用用户自定义的比较函数对数组 $arr 中的元素按键值进行排序: <?phpfunction my_sort($a,$b){ ...

  3. Python decode()方法

    描述 Python decode() 方法以 encoding 指定的编码格式解码字符串.默认编码为字符串编码.高佣联盟 www.cgewang.com 语法 decode()方法语法: str.de ...

  4. PHP set_exception_handler() 函数

    定义和用法 set_exception_handler() 函数设置用户自定义的异常处理函数. 该函数用于创建运行期间的用户自己的异常处理方法. 该函数返回旧的异常处理程序,如果失败则返回 NULL. ...

  5. IC行业常见用语

    https://www.cnblogs.com/yeungchie/ Active Devices 有源器件 MOSFET Metal-Oxide-Semicoductor Field-Effect ...

  6. 一本通 高手训练 1782 分层图 状压dp

    LINK:分层图 很精辟的一道题 写的时候没带脑子 导致搞了半天不知道哪错了. 可以想到状压每次到某一层的状态 然后这个表示方案数 多开一维表示此时路径条数的奇偶即可. 不过显然我们只需要知道路径条数 ...

  7. Redis实现商品热卖榜

    Redis系列 redis相关介绍 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合 ...

  8. 什么是Cookie、Session、Token?

    原文:https://mp.weixin.qq.com/s/pWXhI_ppKhtOP-Xf_SpuDA 来源:后厂村码农 在了解这三个概念之前我们先要了解 HTTP 是无状态的Web服务器,什么是无 ...

  9. springMVC 与 html RESTful 解决方案

    若前端为html 而非jsp  且 拦截如下 <servlet-mapping> <servlet-name>springMVC</servlet-name> &l ...

  10. property补充

    property补充 # class Foo: # @property # def AAA(self): # print('get的时候运行我啊') # # @AAA.setter # def AAA ...