今日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. Python访问、修改、删除字典中的值

    Python访问字典中的值: # 使用字典 ['键'] 获取字典中的元素 dic = {'a':123,'b':456,'c':789} print(dic['a']) # print(dic['c' ...

  2. timeit_list操作测试

    ''' timeit库Timer函数 ''' from timeit import Timer def test1(): l = list(range(1000)) def test2(): l = ...

  3. functools 中的 reduce 函数基本写法

    reduce 返回的往往是一整个可迭代对象的 操作结果 reduce(函数,可迭代对象) 注:lambda x,y 两个参数 2020-05-04

  4. GitHub 热点速览 Vol.30:那些提升效率的小工具们

    摘要:虽然 GitHub 是一个学习技术的好去处,但是除了学习,它还集提高"搬砖"效率于一身.GitHub 上散落着各式各样的小工具,比如本周特推的 Adobe 开源的 React ...

  5. Python raw_input() 函数

    python raw_input() 用来获取控制台的输入.高佣联盟 www.cgewang.com raw_input() 将所有输入作为字符串看待,返回字符串类型. 注意:input() 和 ra ...

  6. CF 题目选做

    写省选的题目对noip没什么大用 关键是 细节题或者是思考题比较重要 练思维自然是CF比较好了 把我见到的比较好的CF题放上来刷一刷. LINK:Complete the projects 就是说一个 ...

  7. Vue Router详细教程

    1.什么是路由 1.1路由简介 说起路由你想起了什么?路由是一个网络工程里面的术语. 路由(routing)就是通过互联的网络把信息从源地址传输到目的地址的活动. --- 维基百科 额,啥玩意? 没听 ...

  8. 用大白话解释什么是Socket

    好好学习,天天向上 本文已收录至我的Github仓库DayDayUP:github.com/RobodLee/DayDayUP,欢迎Star,更多文章请前往:目录导航 前言 我在去年就学习过Java中 ...

  9. 027_go语言中的通道选择器

    代码演示 package main import "fmt" import "time" func main() { c1 := make(chan strin ...

  10. Windows聚焦失效问题的解决办法

    1. 设置Windows聚焦 步骤:任务栏右键 → 任务栏设置 → 锁屏界面 → 背景选择Windows聚焦 2. 解决Windows聚焦失效问题 设置完Windows聚焦之后,锁屏界面却没有变. 尝 ...