casperjs初体验

上一篇文章讲到了phantomjs,在搜索的过程中经常是出现casperjs的搜索结果。看到介绍说是比phantomjs更加易用,于是好奇地试了下如何使用casperjs。 安装 我在mac上测试的,使用brew命令即可,由于casperjs是基于phantomjs,所以需要先安 »

phantomjs初体验

最近老婆产检预约挂号,总是挂不到她想预约的那个医生的号,都是“预约已满”。于是想抓下网页做下有预约号时的提醒。 但是看了下挂号网页,是用ajax返回预约数据。如果用curl或者python requests需要先找到js里所描述的ajax方法以及对应的url。可能是js水平问题, »

报警聚合邮件

情景 相信在日常的运维工作中,大家会经常遇到同一个故障类型,在短时间内同时发生在多个不同的主机,然后报警系统就会根据机器的数量发出N封邮件。 比如说第一封邮件显示"主机10.10.10.1在5分钟内丢包率超过50%",然后第二封邮件提示"主机10.10.10.2在5分钟内丢包率超 »

近来关于openTSDB/HBase的一些杂七杂八的调优

背景 过年前,寂寞哥给我三台机器,说搞个新的openTSDB集群。机器硬件是8核16G内存、3个146G磁盘做数据盘。 我说这太抠了,寂寞哥说之前的TSDB集群运行了两年,4台同样配置的机器,目前hdfs才用了40%,所以前期先用着这三台机器,不够再加。 于是我只好默默地搭好了C »

bosun grafana template

这篇文章是在上篇增加了bosun grafana plugin之后,在设置bosun的grafana dashboard时,发现了dashboard template的一个问题的临时处理办法的总结。 背景 比如我们在设置dashboard时,一般一个dashboard是有多个图的 »

bosun grafana plugin

最近一直在部署bosun监控项及报警系统,改写了不少指标值收集脚本,写了个自动部署脚本,目前已经在小范围内测试。越来越喜欢bosun的报警的强大及灵活性,但是还有觉得不太满意的是: 没有类似zabbix中的维护时间,只能用band函数取时间区段模拟,不过我们可以调用silence »

scollector备忘

这篇文档记录配置scollector中遇到的一些注意事项。 hostname 我们很多机器都默认没有设置hostname,所以默认的hostname都是localhost,这样在监控时就不能区分了。因此要设置个定义的hostname,配置文件: hostname = "serve »

bosun安装记录

bosun是一个基于openTSDB的一个监控系统,它在openTSDB基础上增加了报警系统,解决了openTSDB只能看不能报警的弱点。 本文章只是简单记录了如何安装bosun(官网上的QuickStart只有用docker来部署的例子),及简单的监控项部署介绍。 HBase和 »

perf stat 输出解读

perf stat 输出解读 task-clock:用于执行程序的CPU时间,单位是ms(毫秒)。第二列中的CPU utillized则是指这个进程在运行perf的这段时间内的CPU利用率,该数值是由task-clock除以最后一行的time elapsed(也就是wall ti »

sed简明使用教程

贴下我之前写的一个sed小总结 SED编辑模式 # p 打印匹配行 sed -n '2 p' input.file # d 删除匹配行 sed '2 d' input.file # r 读取文件至匹配位置 sed '2 r sample.file' input.fil »