
私はユーザーサービスを持っています。/home/<user>/.config/systemd/user/<service>.service
実行するとsystemctl --user status <service>
、次のような望ましい出力が得られます。
<user>@<server>:~$ systemctl --user status <service>
● <service>.service - Service
Loaded: loaded (/home/<user>/.config/systemd/user/<service>.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-07-27 10:23:34 UTC; 9min ago
Main PID: 19059 (<service>)
CGroup: /user.slice/user-1008.slice/[email protected]/<service>.service
└─19059 /home/<user>/.local/share/<software>/install/active_release/bin/<software>-validator
Logs
Logs
Logs
journalctl --user -u <service> -f
しかし、何も表示されない状態で完全なログを表示しようとすると、出力は次のようになります。
<user>@<server>:~$ journalctl --user -u <service> -f
No journal files were found.
まったく同じ構成の他の多くのサーバーでこのセットアップを実行していますが、これは Equinix の一部のサーバーであるこのサーバーでのみ発生します。このプロバイダーの journalctl に異なる構成がある可能性があります。ただし、このマシンに他のサービス (ユーザーのサービスではなく、システム全体のサービス) をインストールしても発生していないことを指摘しておくことが重要です。
/etc/systemd/journal.conf はデフォルト設定になっています。
私の問題に少し関連するこの投稿を見ました:Linux journalctl が systemctl ステータスと同期されない / Journalctl が更新されない、 [Service] セクションの下にStandardOutput=journal
を挿入して、サービスを再起動しようとしましたが、journalctl にはまだログが表示されません。StandardError=journal
systemctl --user daemon-reload
ディスク容量が不足していないかどうかを確認するために /var も確認しましたが、ディスクにはかなり多くの空き容量があります。
私のサービスは現在次のように構成されています:
[Unit]
Description=<Service description>
After=network.target
StartLimitIntervalSec=0
[Service]
Type=simple
Restart=always
RestartSec=1
EnvironmentFile=/home/<user>/rpc.env
ExecStart=/home/<user>/bin/<service_script>.sh
#ExecStartPost=/usr/bin/taskset -a -p -c 5-23 28-47 $MAINPID
CPUAffinity=5-23 28-47
Nice=-10
LimitNOFILE=700000
LimitNPROC=700000
LogRateLimitIntervalSec=0
LogRateLimitBurst=0
WorkingDirectory=/home/<user>/
[Install]
WantedBy=default.target
どうすれば修正できるか、何かアイデアはありますか?