Logstash

Stella981
• 阅读 571
#读
input {
    file {
        path => "文件全路径"
        type => "任意名字最好有意义"#自定义日志区分类型
        start_position => "beginning" #从文件开始处读写
    }
}
#过滤
filter {
    grok {
        #切割后日期名字叫logdate 
        match => ["message", "%{TIMESTAMP_ISO8601:logdate}"] 
    }
    date {
        #logdate 从上面过滤后取到的字段名,yyyy-MM-dd HH:mm:ss.SSS 日期格式条件
        match => ["logdate", "yyyy-MM-dd HH:mm:ss.SSS"]
        #match => ["logdate", "yyyyMMdd","yyyy-MM-dd"]
        #赋值给那个key
        target => "@timestamp"
        #删除不需要的字段
        remove_field => ["logdate"]
    }
       #合并错误日志
       multiline {
            pattern => "^\d{4}-\d{1,2}-\d{1,2}\s\d{1,2}:\d{1,2}:\d{1,2}"
            negate => true
            what => "previous"
        }
}
#输出
output{
    #输出到ES
    elasticsearch{
        hosts=>["127.0.0.1:9200"]  
        #es的index名字,默认就是这个,可以更改
        index => "logstash-%{+YYYY.MM.dd}"
    }
    #输出到控制台
    stdout{codec => rubydebug}
}
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
半臻 半臻
3年前
Python基础8——文件操作
16文件操作16.1文件操作的基本概念文件操作的步骤1.打开文件2.读、写文件3.关闭文件open函数,创建一个file对象,默认是以只读的方式打开read方法:一次性读取文件的所有内容write方法:将指定内容写入文件close方法:关闭文件file对象的属性flie.name文件的名称file.mode文件的访问模式file.closed
待兔 待兔
3个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
javase IO
File类,用来表示一个文件或者一个文件夹,通过File类的对象来对文件夹的名字,路径,大小等等访问,但是不可以直接访问文件内的数据构造newFile(Stringurl)指定路径newFile(StringparentUrl,Stringurl)指定父路径,当前文件newFile(Fileparent,
浩浩 浩浩
3年前
golang 读取文件的四种方式
读文件读取的文件放在file/test:也就是file包下的test这个文件,里面写多一点文件读文件方式一:利用ioutil.ReadFile直接从文件读取到byte中funcRead0()(string){f,err:ioutil.ReadFile("file/test")iferrn
git常用命令
关注公众号QXF069克隆版本:gitclone path路径<directory 若默认则是文件的名字。查看远程版本库的地址  gitremotev|verbose将本地版本库和远程URL关联起来gitremoteaddtbranch<name(origin)<RepositoryU
Stella981 Stella981
3年前
ELK学习笔记之配置logstash消费kafka多个topic并分别生成索引
0x00 filebeat配置多个topicfilebeat.prospectors:input_type:logencoding:GB2312fields_under_root:truefields:添加字段
Wesley13 Wesley13
3年前
MySQL如何判别InnoDB表是独立表空间还是共享表空间
InnoDB采用按表空间(tablespace)的方式进行存储数据,默认配置情况下会有一个初始大小为10MB,名字为ibdata1的文件,该文件就是默认的表空间文件(tablespcefile),用户可以通过参数innodb\_data\_file\_path对其进行设置,可以有多个数据文件,如果没有设置innodb\_file\_per\_tab
Stella981 Stella981
3年前
Grafana分析Nginx日志
按日期对ES的index进行分割:logstash配置:input{file{path"/home/hottopic/logs/trendshottingapi/metric/"type"trendshottingapimetric"start_p
Stella981 Stella981
3年前
Python计算大文件行数方法及性能比较
如何使用Python快速高效地统计出大文件的总行数,下面是一些实现方法和性能的比较。1.readline读所有行使用readlines方法读取所有行:defreadline_count(file_name):returnlen(open(file_name).readlines())