我在**/etc/systemd/sysem/horses.service**有一项服务
[Unit]
Description=Description for sample script goes here
After=rc-local.service
[Service]
Type=simple
ExecStart=/opt/horses/startSanic2.sh
TimeoutStartSec=0
Environment="REDIS_HOST=192.168.150.220"
Environment="REDIS_PORT=6379"
[Install]
WantedBy=default.target它使用以下代码运行shell脚本:
#!/bin/bash
gunicorn horses.server:app --bind 0.0.0.0:9000 --worker-class sanic.worker.GunicornWorker --reload我成功地运行了它,我可以看到服务的日志正在被写入,并且可以从以下位置读取:
journalctl -u horses.service如果我运行这个命令,我可以看到horses.service记录的所有事件。
我对systemd服务的日志没有任何经验。我非常担心的是,因为该服务将一直运行--例如,是否可以将信息(日志)设置为日志记录( -u horses.service )中的信息(日志)--例如最后10天,或者定义一些循环日志或建议的任何方法,以确保我的日志不会满,因为我确实希望以整个磁盘(分区)满结束。请建议我如何限制原木。
预先多谢!
发布于 2019-04-04 08:28:43
通过运行journalctl -u,您可以看到应用程序输出到控制台(或错误),由systemd为您处理它们。
全局配置可以在/etc/systemd/journald.conf中找到,默认值将满足您的需要,因此您可以使用默认值。
顺便说一句,下面是您可以用来更改日志记录行为的配置:
SystemKeepFree:其他应用程序还有多少磁盘空间(默认为15%)。SystemMaxuse:磁盘空间的最大使用量(默认为10%)。默认情况下,systemd尽可能保存日志(受上述规则限制),但是,如果需要基于旋转的配置,则可以使用MaxRetentionSec。
同样,您不需要担心systemd使用磁盘,只需使用默认配置即可。
https://stackoverflow.com/questions/55493637
复制相似问题