- 博客(129)
- 收藏
- 关注
原创 第一章 入门示例
zjtest7-frontend:/usr/local/logstash-2.3.4/bin# ./logstash -e 'input{stdin{}} output{stdout{codec=>rubydebug}}'Settings: Default pipeline workers: 1Pipeline main startedHellow World{ "messa
2016-08-31 15:33:18 364
原创 zabbix 通过gateway 获取远程主机的JMX信息
DBHost=192.168.32.55DBName= zabbixDBUser=zabbixuserDBPassword=zabbixpassStartTrappers=20MaxHousekeeperDelete=5000 CacheSize=1024MStartDBSyncers=8TrendCacheSize=128MHistoryTextCacheSize=
2016-08-31 14:06:32 1751
原创 kabina启动配置
启动 kibana# /usr/local/kibana-4.1.1-linux-x64/bin/kibanazjtest7-redis:/usr/local/kibana-4.5.3-linux-x64/bin# ./kibana log [10:50:33.506] [info][optimize] Optimizing and caching bundles for kiba
2016-08-31 11:15:47 8043
原创 (?m) 标记
在和 codec/multiline 搭配使用的时候,需要注意一个问题,grok 正则和普通正则一样,默认是不支持匹配回车换行的。就像你需要 =~ //m 一样也需要单独指定,具体写法是在表达式开始位置加 (?m) 标记。如下所示:match => { "message" => "(?m)\s+(?\d+(?:\.\d+)?)\s+"}
2016-08-31 09:31:43 491
原创 \s+(?<request_time>\d+(?:\.\d+)?)\s+ 解释
看elk 看到一个正则;\s+(?\d+(?:\.\d+)?)\s+回顾下:(?:pattern) 匹 配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 “或” 字符 (|) 来组合一个模式的各个部分是很有用。例如, ‘industr(?:y|ies) 就是一个比 ‘industry|industries’ 更简略的表达式。表示括号只是
2016-08-30 22:38:18 2564
原创 (?:pattern) (?=pattern) (?!pattern)
(pattern) 匹配 pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中则使用 $0…$9 属性。要匹配圆括号字符,请使用 ‘\(’ 或 ‘\)’。 (?:pattern) 匹 配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 “
2016-08-30 22:12:52 3510 3
原创 mysql logstash 配置
[elk@dr-mysql01 mysql]$ cat logstash_mysql.confinput { file { type => "zj_mysql" path => ["/data01/applog_backup/zjzc_log/zj-mysql01-slowlog.*"]
2016-08-30 21:02:56 2313
原创 logstash 解析mysql slow log
# User@Host: zjzc_app[zjzc_app] @ [10.252.148.16xx] Id: 6043127# Query_time: 2.581184 Lock_time: 0.000336 Rows_sent: 6 Rows_examined: 6331310SET timestamp=1472536079;select temp.* from ( SELECT
2016-08-30 20:24:35 1281
原创 logstash 处理nginx 错误日志
2016/08/30 14:52:02 [error] 11325#0: *346 open() "/var/www/zjzc-web-frontEnd/%27%22%2f%3E%3C%2fscript%3E%3Cscript%3Ealert%28%29%3C%2fscript%3E" failed (2: No such file or directory), client: 10.171.24
2016-08-30 15:00:23 2142
原创 logstash nginx 访问日志
log_format main '$remote_addr [$time_local] "$request" ' '$request_body $status $body_bytes_sent "$http_referer" "$http_user_agent" ' '$request_time $http
2016-08-30 14:53:45 1502
原创 其中 (%{WORD:x_forword}|-) |表示或的意思
121.40.205.143 [30/Aug/2016:14:03:08 +0800] "GET /resources/images/favicon.ico HTTP/1.1" - 200 4286 "https://uatest.winfae.com/products/productList.html" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebK
2016-08-30 14:21:54 579
原创 grok 官方文档
grok:解析任意文本并构造它:Grok 是当前最好的方式在logstash 解析蹩脚的非结构化日志数据 到一些结构化的可查询的。这个工具是完美的对于syslog logs, apache和其他webserver logs,mysqllogs,在一般情况下,任何日志格式通常对于人是友好的而不是对于电脑Logstash 有120种模式默认,你可以找到它们在:https:/
2016-08-30 13:57:00 17895 1
原创 haproxy nginx 多路径
nginx 多路径: location / { root /t/deploy/zjdev/deployedApps/zjzc-web-frontEnd/; index index.html index.htm; } location /backoffice { roo
2016-08-30 09:38:04 670 1
原创 logstash 处理tomcat日志
[root@dr-mysql01 tomcat]# cat logstash_tomcat.conf input { file { type => "zj_api" path => ["/data01/applog_backup/zjzc_log/zj-api*"] } fil
2016-08-29 20:08:03 7716
原创 grok 正则也支持常规正则
2016-08-29 17:40:01,19 INFO com.zjzc.common.utils.HttpUtil - 请求接口: https://www.zjcap.cn/pay/interface/querypayorder, 耗时=-173 ^\s*%{TIMESTAMP_ISO8601}{ "TIMESTAMP_ISO8601": [ [ "2016-08
2016-08-29 18:40:46 973
原创 %{TIMESTAMP_ISO8601} 匹配2016-08-29 17:40:01,191
2016-08-29 17:40:01,191 INFO com.zjzc.common.utils.HttpUtil - 请求接口: https://www.zjcap.cn/pay/interface/querypayorder, 耗时=-173 ^\s+%{TIMESTAMP_ISO8601} { "TIMESTAMP_ISO8601": [ [ "
2016-08-29 17:49:56 8650 1
原创 logstash grok 解析Nginx
log_format main '$remote_addr [$time_local] "$request" ' '$request_body $status $body_bytes_sent "$http_referer" "$http_user_agent" ' '$request_time $upst
2016-08-29 17:41:22 3635
原创 logstash grok正则调试
logstash 正则调试;nginx 配置;log_format main '$remote_addr [$time_local] "$request" ';logstash: "message" =>"%{IPORHOST:clientip} \[%{HTTPDATE:time}\] \"%{WORD:verb} %{URIPATHPARAM:request} HTTP/%{N
2016-08-29 15:39:38 4026
原创 nginx grok 正则错误的输出情况
nginx 配置:http { include mime.types; default_type application/octet-stream; log_format main '$http_host $server_addr $remote_addr [$time_local] "$request" '
2016-08-29 09:54:16 2277
原创 hdr_beg(host) 主机名开始
What does “acl cdn_name hdr_beg(host) -i foor.bar.com” mean in HAProxy's configuration?在Haproxy 里配置是什么意思、它是顶替一个ACL 叫做cdn_name,使用 hdr_beg(host) -i foo.bar.com规则。规则基本上意思是HTTP Host: header 开始是"foo.
2016-08-28 13:54:24 1235
原创 URL组成介绍
1.2. HTTP request-----------------First, let's consider this HTTP request : Line Contents number 1 GET /serv/login.php?lang=en&profile=2 HTTP/1.1 2 Host: www.mydomain.com
2016-08-28 13:37:06 837
原创 grok 正则解析日志例子<1>
下面是日志的样子55.3.244.1 GET /index.html 15824 0.043正则的例子%{IP:client} %{WORD:method} %{URIPATHPARAM:request} %{NUMBER:bytes} %{NUMBER:duration}配置文件里是怎么写得? input { file { path => “/var/log/http
2016-08-27 23:32:10 2887
转载 logstash 使用grok正则解析日志
http://xiaorui.cc/2015/01/27/logstash%E4%BD%BF%E7%94%A8grok%E6%AD%A3%E5%88%99%E8%A7%A3%E6%9E%90%E6%97%A5%E5%BF%97%E9%81%87%E5%88%B0%E7%9A%84%E9%97%AE%E9%A2%98/http://grokdebug.herokuapp.com/demo:htt
2016-08-27 22:20:33 2541
原创 haproxy image跳转 haproxy匹配 匹配到了就停止,不会继续往下匹配
/***第一种nginx 配置: location / { root /var/www/zjzc-web-frontEnd; index index.html; }zjtest7-frontend:/var/www/zjzc-web-frontEnd/images# pwd/var/www/zjzc-web-fro
2016-08-26 20:07:11 858
原创 Mysql 利用multiline 实现多行匹配
[root@dr-mysql01 mysql]# cat logstash_mysql.confinput { file { type => "zj_mysql" path => ["/data01/applog_backup/zjzc_log/zj-mysql01-slowlog.*"] }
2016-08-26 15:24:38 1053
原创 mysql perl 抓取update语句
[root@zjzc01 binlog]# cat binlog.sh ls -ltr mysql-bin.* | grep -v index | awk '{print $NF}' | while read Adoecho $Amysqlbinlog $A >$A.sqlperl binlog.pl $A.sql update SystemRole >$A.sql.txtrm -r
2016-08-26 13:28:52 623
原创 $/ 改变换行符
$/ 改变换行符[root@zjzc01 binlog]# cat a1.pl open (A,"<","aa");# local $/; $lines = ;print $lines;[root@zjzc01 binlog]# perl a1.pl update ClientActionTrack set[root@zjzc01 binlog]# cat a1.pl op
2016-08-26 13:14:24 636
原创 mysql 匹配update
update 语句示例:UPDATE `zjzc`.`QRTZ_SCHEDuler_state` SET `ip`='220.191.34.246' WHERE `sn`='3117764' and`startTime`='2016-07-20 00:02:40';UPDATE QRTZ_SCHEDULER_STATE SET LAST_CHECKIN_TIME = 14721740862
2016-08-26 12:58:01 978
原创 perl binlog dml操作报告
if ( $#ARGV < 2 ){ print "please input like binglog-0001 '2013-07-01 00:00:00' '2013-07-02 00:00:00'!\n"; exit(-1); } $file= $ARGV[0];
2016-08-26 10:49:42 344
原创 mysql 分区 按 PARTITION BY RANGE (TO_DAYS(startTime))
to_days()Given a date date, returns a day number (the number of days since year 0).给定一个date 日期,返回天数Create Table: CREATE TABLE `ClientActionTrack` ( `sn` bigint(20) NOT NULL AUTO_INCREMENT, `
2016-08-26 10:23:48 5250
原创 Mysql explain 查看分区表
mysql> explain select * from ClientActionTrack where startTime>'2016-08-25 00:00:00' and startTime<'2016-08-25 23:59:00';+----+-------------+-------------------+------+---------------+------+--------
2016-08-26 09:57:04 3820
原创 zookeeper 各节点数据保证是弱一致性
一致性保证:ZooKeeeper 是一个高性能的,可扩展的服务。不管是读和写操作是被设计成快速,虽然读比写快。这样做的原因是在读的情况下,Zookeeper 可以提供旧的数据,反过来又是由于Zookeeper的一致性保证;顺序一致性;从客户端更新会按他们发送的顺序应用原子性;更新成功还是失败 不会有部分的结果单系统镜像一个客户端可以看到相同的试图
2016-08-25 22:16:00 4273
原创 zookeeper数据弱一致性
zookeeper本身支持单机部署和集群部署,生产环境建议使用集群部署,因为集群部署不存在单点故障问题,并且zookeeper建议部署的节点个数为奇数个,只有超过一半的机器不可用整个zk集群才不可用。zookeeper集群中主要有两个角色leader和flower,每个客户端可以连接集群中的任何一个zookeeper节点,同时从其上面read信息,但是针对write操作,flower节点会转发给l
2016-08-25 21:08:35 2253
原创 codec ruby和json格式输出
zjtest7-frontend:/usr/local/logstash-2.3.4/config# cat geoip.confinput {stdin {} }filter { geoip { source =>"message" }} output { stdout { codec => ruby
2016-08-25 16:46:54 1786
原创 perl /m 当作多行处理
高级用法 多行匹配:zjtest7-frontend:/root/0825# cat a2.pl print "1111111111111\n";my $_="abc\nABC\nabc";print $_;print "\n";print "2222222222222\n";my $_="abc\nABC\nabc";s/c$/ZZZ/g;print $_;print
2016-08-25 16:26:18 1617
原创 grok 正则捕获(就是perl的正则捕获)
2.3.2 grok 正则捕获:\s+ 和 [\n\t\r\f]+ 一样 1、命名分组格式为(?),反向引用时用\k2、命名分组的匹配的结果存在在变量%+变量中,取命名分组值,$+{grp name}.zjtest7-frontend:/root/0825# cat a1.pl my $str=" begin 123.456 end ";if ($str =~/(?\
2016-08-25 15:12:25 794
原创 logstash 处理多行
2.2.2 多行事件编码:zjtest7-frontend:/usr/local/logstash-2.3.4/bin# ./plugin list | grep multiIgnoring ffi-1.9.13 because its extensions are not built. Try: gem pristine ffi --version 1.9.13logstash-code
2016-08-25 14:38:21 3839
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人