Process monitoring with Python and Telegram

Practical Example

Launch the script from the terminal with the following syntax:

python crashinspector.py token:user_id process_name interval

where token is the token provided by BotFather, user_ID is the Telegram user ID provided by the Get Chat ID bot, process_name is the name of the process you are monitoring, and interval is the time interval for performing the checks (in minutes). For example, run the following command to check the status of the filezilla process every 30 minutes:

python crashinspector.py 7237372881:AAEA-ZPF9WMRX5aNSa0PoJDCiUePoNqu0Uk 17130319 filezilla 30

Assuming that filezilla is terminated after about two and a half hours, the output will be similar to Listing 3.

Listing 3

Output

filezilla up and running at 2024-07-21 16:49:13.559405
filezilla up and running at 2024-07-21 17:19:13.616971
filezilla up and running at 2024-07-21 17:49:13.621785
filezilla up and running at 2024-07-21 18:19:13.624988
filezilla up and running at 2024-07-21 18:49:13.628092
Process filezilla is currently down

Conclusion

When launched from the console, the script described in this article obtains the list of running processes and checks for an instance of the process. If an instance of the process is active, a string indicating the date and time of the check is printed. The cycle continues in the same manner for the specified time interval. If the process is not running during an iteration of the cycle, the application prints a warning on the console and sends an alert message via Telegram.

The Author

Andrea Ciarrocchi is a technology enthusiast. Visit his homepage at https://andreaciarrocchi.altervista.org.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Push Messages from the Command Line to Telegram
  • Hey, Mr. Postman

    Our columnist Charly K¸hnast doesn't want to be out when a package delivery service is standing at his front door with some goodies. When the courier rings, he can have the Telegram API send a notification to his mobile phone.

  • Domoticz

    The open source Domoticz home automation platform offers a lightweight, efficient, and highly customizable solution for managing smart devices in the home.

  • FOSSPicks

    This month's FOSSPicks was nearly lost in a stream of AES-256 noise, as Graham struggled to get his encrypted Linux installation (using LUKS) to live alongside an encrypted macOS installation (using APFS).

  • Chatbots with Rasa

    Many websites offer an automated feature that responds to visitor questions. If you're ready to build your own web chatbot, but don't have time to become an AI expert, Rasa Open Source can help.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News