有人知道如何在 ELK 这样的 SIEM 中导出 mac os x 的 ASL 日志吗? filebeat 上是否有配置可以先将它们转换为文本格式。
我知道我们可以通过 syslog –T utc –F raw 读取它们
最佳答案
您应该能够通过 log
命令导出所有内容。我有时喜欢通过logstash和elasticsearch分析我的个人笔记本电脑产生的日志。为了将日志存入logstash,我在 tmux 窗口中运行以下命令:
sudo log stream --info --debug |sudo -E socat -dddd STDIN TCP4:logstash.docker:6661,interval=4,reuseaddr,forever
我在logstash中编写了几个groks来解析macos系统日志,它们大部分时间都可以工作。请随意将它们用于您自己的日志。如果您设法改进它们,请按照我的方式将它们(或要点链接)发送给我。
filter {
grok {
match => { "message" => "%{YEAR:year}-%{MONTHNUM:month}-%{MONTHDAY:day}\s+%{HOUR:hour}:%{MINUTE:minute}:%{SECOND:second}%{ISO8601_TIMEZONE:tz}%{GREEDYDATA}" }
add_field => {"[log_timestamp]" => "%{year}-%{month}-%{day} %{hour}:%{minute}:%{second}%{tz}"}
tag_on_failure => ["datefail_string"]
}
grok {
match => { "message" => ["%{YEAR:year}-%{MONTHNUM:month}-%{MONTHDAY:day}\s+%{HOUR:hour}:%{MINUTE:minute}:%{SECOND:second}%{ISO8601_TIMEZONE:tz}\s+%{BASE16NUM:thread_id}\s+%{LOGLEVEL:log_type}\s+%{BASE16NUM:activity}\s+%{NUMBER:pid}\s+%{DATA:program}:\s+\(%{DATA:library}\)\s+\[%{DATA:package}\]\s+%{GREEDYDATA:msg}", "%{YEAR:year}-%{MONTHNUM:month}-%{MONTHDAY:day}\s+%{HOUR:hour}:%{MINUTE:minute}:%{SECOND:second}%{ISO8601_TIMEZONE:tz}\s+%{BASE16NUM:thread_id}\s+%{LOGLEVEL:log_type}\s+%{BASE16NUM:activity}\s+%{NUMBER:pid}\s+%{DATA:program}:\s+\[%{DATA:package}\]\s+%{GREEDYDATA:msg}", "%{YEAR:year}-%{MONTHNUM:month}-%{MONTHDAY:day}\s+%{HOUR:hour}:%{MINUTE:minute}:%{SECOND:second}%{ISO8601_TIMEZONE:tz}\s+%{BASE16NUM:thread_id}\s+%{LOGLEVEL:log_type}\s+%{BASE16NUM:activity}\s+%{NUMBER:pid}\s+%{DATA:program}:%{GREEDYDATA:msg}"] }
tag_on_failure => ["logfail1"]
remove_field => ["message"]
}
mutate {
remove_field => ["month","day","year","minute","hour","second","tz"]
}
}
关于macos - Apple 系统日志到 ELK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50890321/