带有python脚本的Ubuntu Server 16.04 systemctl服务正在运行但无法正常工作

时间:2018-02-15 11:28:16

标签: python service systemctl

我在本网站上阅读了很多关于如何将python脚本实现为服务的帖子。

在摆弄我之后,我的服务是通过systemctl(并且正在运行)启动的,但脚本什么都不做......

我在/ etc / systemd / system /中的配置文件:

[Unit]
Description=tg Bot

[Service]
Type=simple
User=user
WorkingDirectory=/home/user/tg_onduty/
ExecStart=/usr/bin/python3 /home/user/tg_onduty/on_duty.py
Restart=always

[Install]
WantedBy=multi-user.target

输出:

user@server:~$ sudo service tg_onduty status
● tg_onduty.service - Telegram OnDuty Bot
   Loaded: loaded (/etc/systemd/system/tg_onduty.service; enabled; vendor preset
   Active: active (running) since Thu 2018-02-15 11:28:20 CET; 2min 17s ago
 Main PID: 1538 (python3)
    Tasks: 9
   Memory: 17.7M
      CPU: 351ms
   CGroup: /system.slice/tg_onduty.service
           └─1538 /usr/bin/python3 /home/user/tg_onduty/on_duty.py

我已阅读https://unix.stackexchange.com/questions/339638/difference-between-systemd-and-terminal-starting-program/339645#339645并了解通过systemctl运行脚本与通过CLI运行(通过CLI / usr / bin / python3 /home/user/tg_onduty/on_duty.py正在运行)不同。

我现在的问题是:

我如何追踪或看到什么是错误的或为什么剧本似乎什么都不做? 通过Journalctl我只看到:2月15日11:56:17服务器systemd [1]:开始tg Bot。

感谢任何帮助。

谢谢,

大卫

2 个答案:

答案 0 :(得分:0)

你确定脚本根本没有运行吗?尝试将日志放入脚本中,以查看脚本中的某些内容是否无效。

答案 1 :(得分:0)

向脚本添加一个简单的操作。也许回应一些东西或创建一个虚拟文件。这是了解它是否有效的最简单方法