第十一章·Filebeat-使用Filebeat收集日志
Filebeat介绍及部署
Filebeat介绍 |
Filebeat附带预构建的模块,这些模块包含收集、解析、充实和可视化各种日志文件格式数据所需的配置,每个Filebeat模块由一个或多个文件集组成,这些文件集包含摄取节点管道、Elasticsearch模板、Filebeat勘探者配置和Kibana仪表盘。
Filebeat模块很好的入门,它是轻量级单用途的日志收集工具,用于在没有安装java的服务器上专门收集日志,可以将日志转发到logstash、elasticsearch或redis等场景中进行下一步处理。
Filebeat和Logstash使用内存对比 |
Logstash内存占用
[root@elkstack03 ~]# ps -ef | grep -v grep | grep logstash | awk '{print $2}'
12628
[root@elkstack03 ~]# cat /proc/12628/status | grep -i vm
VmPeak: 6252788 kB
VmSize: 6189252 kB
VmLck: 0 kB
VmHWM: 661168 kB
VmRSS: 661168 kB
VmData: 6027136 kB
VmStk: 88 kB
VmExe: 4 kB
VmLib: 16648 kB
VmPTE: 1888 kB
VmSwap: 0 kB
Filebeat内存占用
[root@test ~]# cat /proc/12750/status /proc/12751/status | grep -i vm
VmPeak: 11388 kB
VmSize: 11388 kB
VmLck: 0 kB
VmHWM: 232 kB
VmRSS: 232 kB
VmData: 10424 kB
VmStk: 88 kB
VmExe: 864 kB
VmLib: 0 kB
VmPTE: 16 kB
VmSwap: 0 kB
VmPeak: 25124 kB
VmSize: 25124 kB
VmLck: 0 kB
VmHWM: 15144 kB
VmRSS: 15144 kB
VmData: 15496 kB
VmStk: 88 kB
VmExe: 4796 kB
VmLib: 0 kB
VmPTE: 68 kB
VmSwap: 0 kB
Filebeat部署 |
官方文档:https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-configuration-details.html
官网下载地址:https://www.elastic.co/downloads/beats/filebeat
#下载Filebeat安装包
[root@elkstack03 ~]# wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.3.2-x86_64.rpm
#安装Filebeat
[root@elkstack03 ~]# yum localinstall -y filebeat-5.3.2-x86_64.rpm
Filebeat收集单类型日志到本地文件
配置Filebeat |
#编辑Filebeat配置文件
[root@elkstack03 ~]# vim /etc/filebeat/filebeat.yml
filebeat.prospectors:
- input_type: log
paths:
- /usr/local/nginx/logs/access_json.log
#不收集的行
exclude_lines: ["^DBG","^$"]
#日志类型
document_type: ngx_log
output.file:
path: "/tmp"
filename: "zls_filebeat.txt"
#启动Filebeat(CentOS6)
[root@elkstack03 ~]# /etc/init.d/filebeat start
#启动Filebeat(CentOS7)
[root@elkstack03 ~]# systemctl start filebeat
#检测进程
[root@elkstack03 ~]# ps -ef|grep filebeat
root 10881 1 0 01:06 pts/1 00:00:00 /usr/share/filebeat/bin/filebeat-god -r / -n -p /var/run/filebeat.pid -- /usr/share/filebeat/bin/filebeat -c /etc/filebeat/filebeat.yml -path.home /usr/share/filebeat -path.config /etc/filebeat -path.data /var/lib/filebeat -path.logs /var/log/filebeat
root 10882 10881 0 01:06 pts/1 00:00:00 /usr/share/filebeat/bin/filebeat -c /etc/filebeat/filebeat.yml -path.home /usr/share/filebeat -path.config /etc/filebeat -path.data /var/lib/filebeat -path.logs /var/log/filebeat

检测本地数据文件 |
#查看本地/tmp目录下内容
[root@elkstack03 ~]# ll /tmp/
总用量 8
-rw------- 1 root root 143953 4月 9 01:06 zls_filebeat.txt
#查看日志内容
[root@elkstack03 ~]# cat /tmp/zls_filebeat.txt
{"@timestamp":"2019-04-08T17:06:09.591Z","beat":{"hostname":"elkstack03","name":"elkstack03","version":"5.3.2"},"input_type":"log","message":"{\"@timestamp\":\"2019-04-08T10:47:41+08:00\",\"host\":\"10.0.0.53\",\"clientip\":\"10.0.0.1\",\"size\":0,\"responsetime\":0.000,\"upstreamtime\":\"-\",\"upstreamhost\":\"-\",\"http_host\":\"10.0.0.53\",\"url\":\"/index.html\",\"domain\":\"10.0.0.53\",\"xff\":\"-\",\"referer\":\"-\",\"status\":\"304\"}","offset":256,"source":"/usr/local/nginx/logs/access_json.log","type":"ngx_log"}
{"@timestamp":"2019-04-08T17:06:09.591Z","beat":{"hostname":"elkstack03","name":"elkstack03","version":"5.3.2"},"input_type":"log","message":"{\"@timestamp\":\"2019-04-08T10:47:42+08:00\",\"host\":\"10.0.0.53\",\"clientip\":\"10.0.0.1\",\"size\":0,\"responsetime\":0.000,\"upstreamtime\":\"-\",\"upstreamhost\":\"-\",\"http_host\":\"10.0.0.53\",\"url\":\"/index.html\",\"domain\":\"10.0.0.53\",\"xff\":\"-\",\"referer\":\"-\",\"status\":\"304\"}","offset":512,"source":"/usr/local/nginx/logs/access_json.log","type":"ngx_log"}

Filebeat收集单类型多个日志到Logstash
配置Filebeat |
#编辑Filebeat配置文件
[root@elkstack03 ~]# vim /etc/filebeat/filebeat.yml
filebeat.prospectors:
- input_type: log
paths:
- /usr/local/nginx/logs/access_json.log
- /usr/local/nginx/logs/access.log
exclude_lines: ["^DBG","^$"]
document_type: ngx_zls
output.logstash:
#logstash 服务器地址,可以是多个
hosts: ["10.0.0.53:6666"]
#是否开启输出至logstash,默认即为true
enabled: true
#工作线程数
worker: 1
#压缩级别
compression_level: 3
#多个输出的时候开启负载
# loadbalance: true
#重启Filebeat
[root@elkstack03 ~]# /etc/init.d/filebeat stop
Stopping filebeat: [确定]
[root@elkstack03 ~]# rm -f /var/lib/filebeat/registry
[root@elkstack03 ~]# /etc/init.d/filebeat start
配置Logstash输出到ES |
#进入Logstash配置文件目录
[root@elkstack03 ~]# cd /etc/logstash/conf.d/
#编辑Logstash配置文件
[root@elkstack03 conf.d]# vim beats.conf
input {
beats {
port => 6666
codec => "json"
}
}
output {
elasticsearch {
hosts => ["10.0.0.51:9200"]
index => "%{type}-%{+YYYY.MM.dd}"
}
}
#启动Logstash
[root@elkstack03 conf.d]# /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/beats.conf &
验证数据 |
打开浏览器,访问:http://10.0.0.51:9100/

Filebeat收集单类型多个日志到Redis
配置Filebeat |
#编辑Filebeat配置文件
[root@elkstack03 ~]# vim /etc/filebeat/filebeat.yml
filebeat.prospectors:
- input_type: log
paths:
- /usr/local/nginx/logs/access_json.log
- /usr/local/nginx/logs/access.log
#不收集的行
exclude_lines: ["^DBG","^$"]
#日志类型
document_type: www.driverzeng.com
output.redis:
hosts: ["10.0.0.54:6379"]
#Redis中的key名称
key: "nginx"
#使用1库
db: 0
#设置超时时间
timeout: 5
#redis密码
password: zls
#重启Filebeat
[root@elkstack03 ~]# /etc/init.d/filebeat stop
Stopping filebeat: [确定]
[root@elkstack03 ~]# rm -f /var/lib/filebeat/registry
[root@elkstack03 ~]# /etc/init.d/filebeat start
登录Redis验证数据 |
#登录Redis
[root@elkstack04 ~]# redis-cli -a zls
#查看所有key
127.0.0.1:6379> KEYS *
1) "nginx"
#查看nginx key长度
127.0.0.1:6379> LLEN nginx
(integer) 218
#取出一条日志
127.0.0.1:6379> LPOP nginx
"{\"@timestamp\":\"2019-04-08T17:40:14.675Z\",\"beat\":{\"hostname\":\"elkstack03\",\"name\":\"elkstack03\",\"version\":\"5.3.2\"},\"input_type\":\"log\",\"message\":\"10.0.0.1 - - [08/Apr/2019:10:29:11 +0800] \\\"GET / HTTP/1.1\\\" 404 571 \\\"-\\\" \\\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36\\\"\",\"offset\":194,\"source\":\"/usr/local/nginx/logs/access.log\",\"type\":\"www.driverzeng.com\"}"

Filebeat收集多类型日志到Redis
配置Filebeat |
#修改Filebeat配置文件
[root@elkstack03 conf.d]# vim /etc/filebeat/filebeat.yml
filebeat.prospectors:
- input_type: log
paths:
- /usr/local/nginx/logs/access_json.log
#不收集的行
exclude_lines: ["^DBG","^$"]
#日志类型
document_type: ngx_log
- input_type: log
paths:
- /usr/local/tomcat/logs/tomcat_access_log.*.log
#不收集的行
exclude_lines: ["^DBG","^$"]
#日志类型
document_type: tc_log
output.redis:
hosts: ["10.0.0.54:6379"]
#Redis中的key名称
key: "tomcat_nginx"
#使用1库
db: 1
#设置超时时间
timeout: 5
#redis密码
password: zls
#重启Filebeat
[root@elkstack03 ~]# /etc/init.d/filebeat stop
Stopping filebeat: [确定]
[root@elkstack03 ~]# rm -f /var/lib/filebeat/registry
[root@elkstack03 ~]# /etc/init.d/filebeat start
登录Redis验证数据 |
#登录Redis
[root@elkstack04 ~]# redis-cli -a zls
#切换成1库
127.0.0.1:6379> SELECT 1
OK
#查看所有key
127.0.0.1:6379[1]> KEYS *
1) "tomcat_nginx"
#查看key长度
127.0.0.1:6379[1]> LLEN tomcat_nginx
(integer) 7
#取出日志
127.0.0.1:6379[1]> LPOP tomcat_nginx
"{\"@timestamp\":\"2019-04-08T17:50:48.599Z\",\"beat\":{\"hostname\":\"elkstack03\",\"name\":\"elkstack03\",\"version\":\"5.3.2\"},\"input_type\":\"log\",\"message\":\"{\\\"@timestamp\\\":\\\"2019-04-09T01:50:47+08:00\\\",\\\"host\\\":\\\"10.0.0.53\\\",\\\"clientip\\\":\\\"10.0.0.53\\\",\\\"size\\\":0,\\\"responsetime\\\":0.000,\\\"upstreamtime\\\":\\\"-\\\",\\\"upstreamhost\\\":\\\"-\\\",\\\"http_host\\\":\\\"www.elk.com\\\",\\\"url\\\":\\\"/index.html\\\",\\\"domain\\\":\\\"www.elk.com\\\",\\\"xff\\\":\\\"10.0.0.1\\\",\\\"referer\\\":\\\"-\\\",\\\"status\\\":\\\"304\\\"}\",\"offset\":25894,\"source\":\"/usr/local/nginx/logs/access_json.log\",\"type\":\"ngx_log\"}"
127.0.0.1:6379[1]> LPOP tomcat_nginx
"{\"@timestamp\":\"2019-04-08T17:50:48.599Z\",\"beat\":{\"hostname\":\"elkstack03\",\"name\":\"elkstack03\",\"version\":\"5.3.2\"},\"input_type\":\"log\",\"message\":\"{\\\"@timestamp\\\":\\\"2019-04-09T01:50:47+08:00\\\",\\\"host\\\":\\\"10.0.0.53\\\",\\\"clientip\\\":\\\"10.0.0.53\\\",\\\"size\\\":0,\\\"responsetime\\\":0.000,\\\"upstreamtime\\\":\\\"-\\\",\\\"upstreamhost\\\":\\\"-\\\",\\\"http_host\\\":\\\"www.elk.com\\\",\\\"url\\\":\\\"/index.html\\\",\\\"domain\\\":\\\"www.elk.com\\\",\\\"xff\\\":\\\"10.0.0.1\\\",\\\"referer\\\":\\\"-\\\",\\\"status\\\":\\\"304\\\"}\",\"offset\":26162,\"source\":\"/usr/local/nginx/logs/access_json.log\",\"type\":\"ngx_log\"}"
127.0.0.1:6379[1]> LPOP tomcat_nginx
"{\"@timestamp\":\"2019-04-08T17:50:48.599Z\",\"beat\":{\"hostname\":\"elkstack03\",\"name\":\"elkstack03\",\"version\":\"5.3.2\"},\"input_type\":\"log\",\"message\":\"{\\\"@timestamp\\\":\\\"2019-04-09T01:50:47+08:00\\\",\\\"host\\\":\\\"10.0.0.53\\\",\\\"clientip\\\":\\\"10.0.0.53\\\",\\\"size\\\":0,\\\"responsetime\\\":0.000,\\\"upstreamtime\\\":\\\"-\\\",\\\"upstreamhost\\\":\\\"-\\\",\\\"http_host\\\":\\\"www.elk.com\\\",\\\"url\\\":\\\"/index.html\\\",\\\"domain\\\":\\\"www.elk.com\\\",\\\"xff\\\":\\\"10.0.0.1\\\",\\\"referer\\\":\\\"-\\\",\\\"status\\\":\\\"304\\\"}\",\"offset\":26430,\"source\":\"/usr/local/nginx/logs/access_json.log\",\"type\":\"ngx_log\"}"
127.0.0.1:6379[1]> LPOP tomcat_nginx
"{\"@timestamp\":\"2019-04-08T17:50:58.601Z\",\"beat\":{\"hostname\":\"elkstack03\",\"name\":\"elkstack03\",\"version\":\"5.3.2\"},\"input_type\":\"log\",\"message\":\"{\\\"clientip\\\":\\\"10.0.0.53\\\",\\\"ClientUser\\\":\\\"-\\\",\\\"authenticated\\\":\\\"-\\\",\\\"AccessTime\\\":\\\"[09/Apr/2019:01:50:49 +0800]\\\",\\\"method\\\":\\\"GET / HTTP/1.1\\\",\\\"status\\\":\\\"304\\\",\\\"SendBytes\\\":\\\"-\\\",\\\"Query?string\\\":\\\"\\\",\\\"partner\\\":\\\"-\\\",\\\"AgentVersion\\\":\\\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36\\\"}\",\"offset\":6328,\"source\":\"/usr/local/tomcat/logs/tomcat_access_log.2019-04-09.log\",\"type\":\"tc_log\"}"
127.0.0.1:6379[1]> LPOP tomcat_nginx
"{\"@timestamp\":\"2019-04-08T17:50:58.601Z\",\"beat\":{\"hostname\":\"elkstack03\",\"name\":\"elkstack03\",\"version\":\"5.3.2\"},\"input_type\":\"log\",\"message\":\"{\\\"clientip\\\":\\\"10.0.0.53\\\",\\\"ClientUser\\\":\\\"-\\\",\\\"authenticated\\\":\\\"-\\\",\\\"AccessTime\\\":\\\"[09/Apr/2019:01:50:49 +0800]\\\",\\\"method\\\":\\\"GET / HTTP/1.1\\\",\\\"status\\\":\\\"304\\\",\\\"SendBytes\\\":\\\"-\\\",\\\"Query?string\\\":\\\"\\\",\\\"partner\\\":\\\"-\\\",\\\"AgentVersion\\\":\\\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36\\\"}\",\"offset\":6661,\"source\":\"/usr/local/tomcat/logs/tomcat_access_log.2019-04-09.log\",\"type\":\"tc_log\"}"
看的出来,tomcat日志和nginx日志都在一个key中

那么有人会问了,都在一个key中,日志不就混乱了么?我们该如何查看日志呢?接下来我们就来解决这个问题。
使用Logstash将beat放入redis的数据输出到ES |
#进入Logstash配置文件目录
[root@elkstack03 ~]# cd /etc/logstash/conf.d/
#编辑Logstash配置文件
[root@elkstack03 conf.d]# vim beats_redis_es.conf
input {
redis {
host => "10.0.0.54"
port => "6379"
db => "1"
key => "tomcat_nginx"
data_type => "list"
password => "zls"
codec => "json"
}
}
output {
elasticsearch {
hosts => ["10.0.0.51:9200"]
index => "%{type}-%{+YYYY.MM.dd}"
}
}
#启动Logstash
[root@elkstack03 conf.d]# /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/beats_redis_es.conf &
验证数据 |
打开浏览器,访问:http://10.0.0.51:9100/

可以看到,我们通过Logstash利用type将日志区分开,分别输出到ES中,虽然在Redis中没有区分开,但是最终在ES中区分开了,那么添加到Kibana中,同样是两个日志。
Filebeat收集多类型日志输出到多个目标
配置Filebeat |
我们将nginx日志 tomcat日志同时输出到Redis
和本地文件中
[root@elkstack03 conf.d]# vim /etc/filebeat/filebeat.yml
filebeat.prospectors:
- input_type: log
paths:
- /usr/local/nginx/logs/access_json.log
#不收集的行
exclude_lines: ["^DBG","^$"]
#日志类型
document_type: ngx_log
- input_type: log
paths:
- /usr/local/tomcat/logs/tomcat_access_log.*.log
#不收集的行
exclude_lines: ["^DBG","^$"]
#日志类型
document_type: tc_log
output.redis:
#redis 服务器地址,可以是多个
hosts: ["10.0.0.54:6379"]
key: "tn"
db: 2
timeout: 5
password: zls
output.file:
path: "/tmp"
filename: "zls.txt"
#工作线程数
worker: 1
#压缩级别
compression_level: 3
#多个输出的时候开启负载
loadbalance: true
#重启Filebeat
[root@elkstack03 ~]# /etc/init.d/filebeat stop
Stopping filebeat: [确定]
[root@elkstack03 ~]# rm -f /var/lib/filebeat/registry
[root@elkstack03 ~]# /etc/init.d/filebeat start
验证Redis数据和本地文件数据 |
#登录redis
[root@elkstack04 ~]# redis-cli -a zls
#切换2库
127.0.0.1:6379> SELECT 2
OK
#查看所有key
127.0.0.1:6379[2]> KEYS *
1) "tn"
#查看key长度
127.0.0.1:6379[2]> LLEN tn
(integer) 260
#取出日志
127.0.0.1:6379[2]> LPOP tn
"{\"@timestamp\":\"2019-04-08T18:47:12.133Z\",\"beat\":{\"hostname\":\"elkstack03\",\"name\":\"elkstack03\",\"version\":\"5.3.2\"},\"input_type\":\"log\",\"message\":\"{\\\"@timestamp\\\":\\\"2019-04-08T10:47:41+08:00\\\",\\\"host\\\":\\\"10.0.0.53\\\",\\\"clientip\\\":\\\"10.0.0.1\\\",\\\"size\\\":0,\\\"responsetime\\\":0.000,\\\"upstreamtime\\\":\\\"-\\\",\\\"upstreamhost\\\":\\\"-\\\",\\\"http_host\\\":\\\"10.0.0.53\\\",\\\"url\\\":\\\"/index.html\\\",\\\"domain\\\":\\\"10.0.0.53\\\",\\\"xff\\\":\\\"-\\\",\\\"referer\\\":\\\"-\\\",\\\"status\\\":\\\"304\\\"}\",\"offset\":256,\"source\":\"/usr/local/nginx/logs/access_json.log\",\"type\":\"ngx_log\"}"

#进入tmp目录
[root@elkstack03 conf.d]# cd /tmp/
#查看文件是否生成
[root@elkstack03 tmp]# ll
总用量 2284
drwxr-xr-x 2 root root 4096 4月 9 02:20 hsperfdata_root
-rw-r--r-- 1 root root 638 4月 9 01:35 keyutil_example.com_5881860801300609526.crt
-rw-r--r-- 1 root root 910 4月 9 01:35 keyutil_example.com_672012091508350129.key
-rw-r--r-- 1 root root 2010104 4月 9 01:35 libnetty-tcnative-linux-x86_647457201629343237428.so
-rw-r--r-- 1 root root 702 3月 30 23:05 message2_2019.03.30.log
srwxrwxrwx 1 mysql mysql 0 3月 8 06:28 mysql.sock
-rw-r--r-- 1 root root 2523 3月 31 01:39 secure_2019.03.30.log
-rw------- 1 root root 148281 4月 9 01:06 zls_filebeat.txt
-rw------- 1 root root 154598 4月 9 02:47 zls.txt
#查看文件内容
[root@elkstack03 tmp]# cat zls.txt
{"@timestamp":"2019-04-08T18:47:12.133Z","beat":{"hostname":"elkstack03","name":"elkstack03","version":"5.3.2"},"input_type":"log","message":"{\"@timestamp\":\"2019-04-08T10:47:41+08:00\",\"host\":\"10.0.0.53\",\"clientip\":\"10.0.0.1\",\"size\":0,\"responsetime\":0.000,\"upstreamtime\":\"-\",\"upstreamhost\":\"-\",\"http_host\":\"10.0.0.53\",\"url\":\"/index.html\",\"domain\":\"10.0.0.53\",\"xff\":\"-\",\"referer\":\"-\",\"status\":\"304\"}","offset":256,"source":"/usr/local/nginx/logs/access_json.log","type":"ngx_log"}
{"@timestamp":"2019-04-08T18:47:12.133Z","beat":{"hostname":"elkstack03","name":"elkstack03","version":"5.3.2"},"input_type":"log","message":"{\"@timestamp\":\"2019-04-08T10:47:42+08:00\",\"host\":\"10.0.0.53\",\"clientip\":\"10.0.0.1\",\"size\":0,\"responsetime\":0.000,\"upstreamtime\":\"-\",\"upstreamhost\":\"-\",\"http_host\":\"10.0.0.53\",\"url\":\"/index.html\",\"domain\":\"10.0.0.53\",\"xff\":\"-\",\"referer\":\"-\",\"status\":\"304\"}","offset":512,"source":"/usr/local/nginx/logs/access_json.log","type":"ngx_log"}
第十一章·Filebeat-使用Filebeat收集日志的更多相关文章
- ELK之filebeat替代logstash收集日志
filebeat->redis->logstash->elasticsearch 官网下载地址:https://www.elastic.co/downloads/beats/file ...
- ELK快速入门(四)filebeat替代logstash收集日志
ELK快速入门四-filebeat替代logstash收集日志 filebeat简介 Filebeat是轻量级单用途的日志收集工具,用于在没有安装java的服务器上专门收集日志,可以将日志转发到log ...
- ELK 使用filebeat替代Logstash收集日志
使用beats采集日志 之前也介绍过beats是ELK体系中新增的一个工具,它属于一个轻量的日志采集器,以上我们使用的日志采集工具是logstash,但是logstash占用的资源比较大,没有beat ...
- Filebeat使用模块收集日志
1.先决条件 在运行Filebeat模块之前: 安装并配置Elastic stack 完成Filebeat的安装 检查Elasticsearch和Kibana是否正在运行,以及Elasticsearc ...
- ELK日志方案--使用Filebeat收集日志并输出到Kafka
1,Filebeat简介 Filebeat是一个使用Go语言实现的轻量型日志采集器.在微服务体系中他与微服务部署在一起收集微服务产生的日志并推送到ELK. 在我们的架构设计中Kafka负责微服务和EL ...
- filebeat+logstash+elasticsearch收集haproxy日志
filebeat用于是日志收集,感觉和 flume相同,但是用go开发,性能比较好 在2.4版本中, 客户机部署logstash收集匹配日志,传输到 kafka,在用logstash 从消息队列中抓取 ...
- 使用filebeat收集日志传输到redis的各种效果展示
0 环境 Linux主机,cengtos7系统 安装有openresty软件,用来访问生成日志信息 1.15.8版本 安装有filebeat软件,用来收集openresty的日志 7.3版本 安装有r ...
- elk-日志方案--使用Filebeat收集日志并输出到Kafka
1,Filebeat简介 Filebeat是一个使用Go语言实现的轻量型日志采集器.在微服务体系中他与微服务部署在一起收集微服务产生的日志并推送到ELK. 在我们的架构设计中Kafka负责微服务和 ...
- filebeat收集日志到elsticsearch中并使用ingest node的pipeline处理
filebeat收集日志到elsticsearch中 一.需求 二.实现 1.filebeat.yml 配置文件的编写 2.创建自定义的索引模板 3.加密连接到es用户的密码 1.创建keystore ...
随机推荐
- 连接服务器VNC
1,启动vnc vncserver 2,提示输入密码 3,Would you like to enter a view-only password (y/n)? 选择n 4,会生成一个端口号 5, ...
- 使用python装饰器计算函数运行时间的实例
使用python装饰器计算函数运行时间的实例 装饰器在python里面有很重要的作用, 如果能够熟练使用,将会大大的提高工作效率 今天就来见识一下 python 装饰器,到底是怎么工作的. 本文主要是 ...
- Python 内置函数 -- zip(), sorted(), filter()和map()
内置函数1. zip() 打包(木桶效应)描述: zip() 函数用于将可迭代的对象作为参数, 将对象中对应的元素打包成一个个元组, 然后返回由这些元组组成的列表语法: zip([iterable, ...
- 一、Node.js安装及环境配置之Windows篇
一.安装环境 1.本机系统:Windows 10 Pro(64位)2.Node.js:v6.9.2LTS(64位) 二.安装Node.js步骤 1.下载对应你系统的Node.js版本:https:// ...
- lua学习笔记4--XLua
下载XLua: https://github.com/tencent/xlua 项目中使用XLua只需将Plugins和XLua两个文件夹拷贝到U3D中即可XLua只是核心,用于实现Lua和C#交 ...
- layui 第三方组件 eleTree 树组件 树形选择器
使用 JS位置 ,layui/lay/modules/eleTree.js:CSS位置 ,layui/css/modules/eleTree/eleTree.css: ## 下面应用即可页面css引用 ...
- Ubuntu16.04下使用pycharm导入scrapy框架
出现迷之问题,ubuntu终端下安装的库在pycharm中无法识别 后重新为pycharm安装相关package,得以使用 看到3即可 https://www.cnblogs.com/airnew/p ...
- [bzoj4842][bzoj1283][Neerc2016]Delight for a Cat/序列_线性规划_费用流
4842: [Neerc2016]Delight for a Cat_1283: 序列 题目大意:ls是一个特别堕落的小朋友,对于n个连续的小时,他将要么睡觉要么打隔膜,一个小时内他不能既睡觉也打隔膜 ...
- 从ftp服务器进行批量下载,处理文件名保存时重名的问题,更改重名文件名方式为给后面加1、2、3等数字,保持后缀不变
公司最近有一个从ftp批量下载文件的需求,但是文件名重复总会报错 没办法,自己下班后写了一个小算法 仿照桶排序的原理,实现了这个小功能,直接上代码: String[] test = {"ha ...
- Vue:不同页面之间的传递参数--params
在嵌套vue-router情况下,不同页面之间传递参数可以通过params实现.而params传参分为两种情况: 1.参数在url中显示 首先你要确定自己要传的参数,并在控制路由的文件中的Router ...