Systemd服务管理与journal日志管理指南

首先提供一个java启动的程序做成 systemd 的简单示例,以及journal配置日志持久化的示例

后面会有详细的systemd及journal使用指南

示例:详细配置见后文,unit文件字段详解

unit示例

[Unit]

After=network.target

Wants=network.target


[Service]

WorkingDirectory=/export/prod/server

Type=simple

ExecStart=/usr/bin/java -jar -Dspring.config.location=application.properties -Dlog4j2.formatMsgNoLookups=true server.jar

Restart=on-failure

RestartSec=1s


[Install]

WantedBy=multi-user.target

需要注意的:

WorkingDirectory=指定服务的工作目录

因为启动指定的application.properties 配置文件的时候没有用绝对路径,所以就要指定工作目录

RestartSec=Systemd 重启当前服务间隔的秒数,缺省是10ms,这里改成了1s

日志是归journal管,首先必须要持久化存储到磁盘

默认情况下,systemd 的日志保存在 /run/log/journal 中,系统重启会清除掉。

修改journal存储模式

sed -i "/^#Storage/cStorage=persistent" /etc/systemd/journald.conf

处理所需要的目录及重启服务

创建目录及重启服务

mkdir /var/log/journal

systemd-tmpfiles --create --prefix /var/log/journal

systemctl restart systemd-journald

把内存文件刷到磁盘

内存文件刷到磁盘

journalctl --flush

设置保存天数

设置保存天数

journalctl --vacuum-time=31d

按日期输出日志

按日期输出日志

journalctl -u circle --since "2022-10-19 14:30:00" --until "2022-10-19 15:00:00"

以上示例完毕。
————————————————
版权声明:本文为CSDN博主「weixin_46752797」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_46752797/article/details/128850504

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值