status = error dest = err name = PropertiesConfig property.filename = /gwlog/data/logstash/logs appender.rolling.type = RollingFile appender.rolling.name = RollingFile appender.rolling.fileName = ${filename}/logstash.log appender.rolling.filePattern = ${filename}/logstash-%d{yyyy-MM-dd}-%i.log.gz appender.rolling.layout.type = PatternLayout appender.rolling.layout.pattern = %d %p %C{1.} [%t] %m%n appender.rolling.policies.type = Policies appender.rolling.policies.time.type = TimeBasedTriggeringPolicy appender.rolling.policies.time.interval = 1 appender.rolling.policies.time.modulate = true appender.rolling.policies.size.type = SizeBasedTriggeringPolicy appender.rolling.policies.size.size=50MB appender.rolling.strategy.type = DefaultRolloverStrategy appender.rolling.strategy.max = 5 appender.console.type = Console appender.console.name = plain_console appender.console.layout.type = PatternLayout appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c] %m%n appender.json_console.type = Console appender.json_console.name = json_console appender.json_console.layout.type = JSONLayout appender.json_console.layout.compact = true appender.json_console.layout.eventEol = true rootLogger.level = debug rootLogger.appenderRef.rolling.ref = RollingFile rootLogger.appenderRef.console.ref = ${sys:ls.log.format}_console
效果图:到了50M就压缩,压缩到了5M多,最多保留5个压缩包,再有就丢弃旧的压缩包
0)查看当前logstash安装了哪些插件 ./logstash-plugin list
1)若logstash没有权限访问某个文件,需要给logstash加到文件所属组或修改文件权限,下面举个修改logstash所属组的例子
这个例子有点问题,修改所属组时,最好加上-a
用usermod 命令可把某用户添加进多个附属组,默认情况下,一次性添加多个附属组可用以下方式来添加:
usermod -G 附属组1,附属组2,...,附属组X 用户名
但在添加之后若再对该用户添加另外附属组时,使用
usermod -G 附属组名 用户名
会把该用户的附属组覆盖为“附属组名”。此时,可在usermod 命令中添加一个参数 -a 即可。
usermod -a -G 附属组名 用户名
2)使用filter插件中的grok插件,格式化apache日志
4)如果你的时间字段可能有多个格式,则可指定多个可能的日期格式:match => [ "timestamp", "MMM dd YYY HH:mm:ss", "MMM d YYY HH:mm:ss", "ISO8601" ]
5)备注:@timestamp 比我们晚了 8 个小时,在kibana显示也是如此。如何能让日志收集时间能和@timestamp一致呢?在date插件中添加如下字段:timezone =>"Asia/Chongqing"
6)若正则表达式匹配失败,logstash会给tag添加要给叫"_grokparsefailure"的tag
7)http://blog.sina.com.cn/s/blog_829a682d0101mkwu.html
8)字段引用
9)sincedb 文件中记录了每个被监听的文件的 inode, major number, minor number 和 pos。
10)你可以随意给事件添加字段或者从事件里删除字段