标签: syslog

测试系统日志的工具

有谁知道我可以用来向系统日志发送消息的工具或脚本?我正在尝试对 syslog 配置进行故障排除,但在排除可能性方面遇到了麻烦。我想做的是这样的:

./testScript -f myFacility "testing testing 123"
Run Code Online (Sandbox Code Playgroud)

并将其发送到本地计算机上的 syslog。

在此先感谢您的任何建议。

富有的

syslog

9
推荐指数
1
解决办法
3万
查看次数

将日志日志获取到纯文本文件

我想将日志日志记录到一个文件中,以便稍后可以获取它并将其发送到 Logstash。我考虑过运行 syslog-ng 并使其成为 Journald 的客户端,这样我就可以获得 syslog 文件。我在 CoreOS 机器上使用 Docker 容器,因此我尝试将 syslog-ng 作为 CoreOS docker 主机中的容器运行,创建一个执行该容器的 systemd 单元。我按照此页面在 systemd 中获取 syslog,但是如果我尝试使 syslog-ng 容器直接从主机中的 syslog 套接字读取(通过使用 docker 卷安装它),它会抱怨“地址已在使用中”。所以我有日志记录,一个运行 syslog-ng 的容器,但我不知道如何在 syslog-ng 内获取日志日志。

我在文件中获取日志日志的替代解决方案是运行一个执行 的 systemd 单元journalctl -f --json | tee -a /var/log/systemd,但我不确定该解决方案的可靠性。这是一个足够好的解决方案吗?

syslog systemd docker journald

9
推荐指数
1
解决办法
2万
查看次数

有没有办法过滤系统日志条目?

我有一个由负载平衡器前端的 Linux 服务器集群,它每 5 秒探测每台服务器以确定它是否可以运行。这些探针在日志中产生了很多无用的噪音,我只想不记录它们......

有没有办法阻止 rsyslog 记录特定事件?

linux syslog

8
推荐指数
1
解决办法
3万
查看次数

是否使用系统日志

有人可以在这里提出一个像样的案例:

我想使用 syslog,所以日志是集成的,所以我可以根据严重性等来指导它更不用说日志轮换了,但同时我喜欢为我的应用程序拥有一个专用日志文件的想法,所以如果有问题,你可以无需进行任何过滤即可轻松查看与应用程序相关的信息。记录到专用文件和系统日志似乎是多余的。有人可以说服我使用一个或另一个,或两者兼而有之。

谢谢

logging syslog

8
推荐指数
2
解决办法
2244
查看次数

Linux:如何将日志文件中的新行发送到远程系统日志?

我们有几个应用程序正在生成自己的纯文本日志文件,我想将其转发到远程 syslog 服务器以进行集中日志记录。我无权访问root这些机器,也无法重新配置syslog以将输出重定向到远程机器。

我在网上找到了一些解决方案,但它们大多是人们自制的 bash 脚本,我正在寻找适合在潜在大批量生产环境中实施的更强大的东西。

最好是设计的东西,着眼于占用空间小,后台守护进程不断运行,可以跟上很多行等。 - 目前有哪些解决方案?

syslog

8
推荐指数
3
解决办法
5万
查看次数

ELK 堆栈(Logstash、Elasticsearch 和 Kibana)与并发远程系统日志服务器?

我正在构建一个日志分析器服务来开始主要监控我们的 pfSense 防火墙、XenServer 管理程序、FreeBSD/Linux 服务器和 Windows 服务器。

互联网上有很多关于 ELK 堆栈以及如何使其正常工作的文档。但我想以不同的方式使用它,但我不知道这是一个好的解决方案还是只是浪费时间/磁盘空间。

我已经有一台 FreeBSD 10.2 机器作为远程系统日志服务器,我的想法是简单地将所有日志集中在这台机器上,系统日志服务器将日志转发logstash-forwarder给 ELK 服务器。

我很清楚这种方法将提高此设置的磁盘要求,但另一方面,我将只有一台logstash-forwarder安装了守护程序的机器,这对我来说似乎很好。

但谈问题。该logstash分析器匹配[host]与服务器的主机名发送日志消息,并在这种方法只存在对ELK,远程系统日志服务器“服务器”节目的。

我知道我可以自定义logstash配置文件上的设置,但我不知道(而且我没有经验知道)这是否只是它的解析器上的一个简单设置是否会危及整个 ELK经验。

最后,我只想要一些关于我的日志架构的建议,以及它是否可以工作,或者我是否应该没有其他选择。

提前致谢,

freebsd syslog logstash kibana elk

8
推荐指数
1
解决办法
1190
查看次数

如何将 Docker 容器日志转发到 ELK?

我想知道将我的 docker 容器日志转发到 ELK 服务器的最简单方法是什么,到目前为止,我在搜索互联网后尝试的解决方案根本不起作用。

基本上,我有一个使用 docker-compose 运行的 docker 映像,该容器不会在本地记录任何内容(它由不同的服务组成,但没有一个是 logstash 或其他任何服务),但我看到通过docker logs -tf imageNamedocker-compose logs. 由于我使用 compose 启动容器,因此我无法使用(或至少我不知道如何使用)--logs-driverdocker 选项。

因此,我想知道是否有人可以启发我,例如如何将该日志转发到 ELK 容器。

提前致谢,

问候

解决方案

感谢 madeddie,我可以通过以下方式解决我的问题,提到我使用了 madeddie 在他的帖子中建议的基本 ELK-stack-in-containers。

首先,我更新了docker-compose.yml我的容器文件,以按照 madeddie 告诉我的那样为日志记录引用添加条目,我为每个服务添加了一个条目,我的 docker-compose 片段如下所示

   version: '2'
    services:
      mosquitto:
        image: ansi/mosquitto
        ports:
          - "1883:1883" # Public access to MQTT
          - "12202:12202"  #mapping logs
        logging: 
           driver: gelf
           options: 
             gelf-address: udp://localhost:12202
    redis:
     image: redis
     command: redis-server --appendonly yes
     ports:
       - "6379:6379" # …
Run Code Online (Sandbox Code Playgroud)

logging syslog docker elk docker-compose

8
推荐指数
1
解决办法
8198
查看次数

此日志是否表明服务器已重新启动?

我有一个我认为在某个时候重新启动的网络服务器..主要是因为 apache 没有为站点提供服务,并且通常在有人启动它并且没有输入 SSL 证书的密码时会这样做......并且重新启动/启动解决了这个问题。环顾四周/var/log/messages,今天的第一个日志条目是:

Jun 30 05:17:40 localhost kernel: imklog 4.2.0, log source = /proc/kmsg started.
Jun 30 05:17:40 localhost rsyslogd: [origin software="rsyslogd" swVersion="4.2.0" x-pid="393" x-info="http://www.rsyslog.com"] (re)start
Jun 30 05:17:40 localhost rsyslogd: rsyslogd's groupid changed to 103
Jun 30 05:17:40 localhost rsyslogd: rsyslogd's userid changed to 101
Run Code Online (Sandbox Code Playgroud)

我假设这意味着它是重新启动,但我对真正的服务器管理知之甚少,我想验证一下。messages如果有帮助,我可以发布其余的。在这些之前的条目是每天一次:

Jun 29 06:34:11 localhost rsyslogd: [origin software="rsyslogd" swVersion="4.2.0" x-pid="350" x-info="http://www.rsyslog.com"] rsyslogd was HUPed, type 'lightweight'.
Run Code Online (Sandbox Code Playgroud)

那么这些是否表明服务器重新启动,正如我猜测的那样?有什么办法可以确定是什么导致了重启?或者如果一个人做到了?

syslog

7
推荐指数
2
解决办法
2万
查看次数

rsyslog udp 转发截断为 2048 个字符

RHEL 6 服务器上的 Rsyslog 在端口 514 UDP 上本地接收消息。这些消息有时比正常的系统日志消息大小大得多。我看到 rsyslog 可以很好地处理所有消息,它可以毫无问题地写入本地文件。但是,当我将远程主机添加到 rsyslog 配置时,这些相同的大消息被截断为大约 2048 个字符。

我正在运行 rsyslogd 版本:5.8.10

rsyslogd 5.8.10, compiled with:
  FEATURE_REGEXP:               Yes
  FEATURE_LARGEFILE:            No
  GSSAPI Kerberos 5 support:        Yes
  FEATURE_DEBUG (debug build, slow code):   No
  32bit Atomic operations supported:    Yes
  64bit Atomic operations supported:    Yes
  Runtime Instrumentation (slow code):  No
Run Code Online (Sandbox Code Playgroud)

我对 rsyslog conf 所做的唯一更改是以下两件事:

这是在我的 rsyslog conf 文件的最顶部:

 $MaxMessageSize 64k
Run Code Online (Sandbox Code Playgroud)

这是在我的 rsyslog conf 文件的最底部:

$template RemoteHost,"<%%PRI%>%TIMESTAMP:::date-rfc3339% %HOSTNAME% %syslogtag:1:32%%msg:::sp-if-no-1st-sp%%msg%
*.* @my-rsyslog-central-logger:514; RemoteHost
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么 rsyslog 会通过 UDP 将日志截断到远程主机,但是在将日志写入本地文件时能够处理日志?

**注意我确实通过使用 netcat 侦听 …

logging syslog udp rsyslog

7
推荐指数
1
解决办法
6531
查看次数

如何使用 logger 命令记录多行消息?

我想通过命令将多行消息记录到系统记录器中

echo -e "foo\nbar" | logger
Run Code Online (Sandbox Code Playgroud)

但它显示为 2 个日志。

是否可以记录为单个日志?

linux ubuntu shell syslog

7
推荐指数
2
解决办法
7036
查看次数

标签 统计

syslog ×10

logging ×3

docker ×2

elk ×2

linux ×2

docker-compose ×1

freebsd ×1

journald ×1

kibana ×1

logstash ×1

rsyslog ×1

shell ×1

systemd ×1

ubuntu ×1

udp ×1