- Jan 2021
Can a full backup of my Telegram be used such that a message I forward to
Saved Messagescan link back to the context in which the message was forwarded?
Do I have to forward the context of the video link I'm saving for later, or is there enough metadata to back-link to where it came from?
Running all that manually (more than 100 scripts across all devices) is an awful job for a human. I want to set them up once and more or less forget about it, only checking now and then.
My ideals for all of my regular processes and servers:
- Centralized configuration and control - I want to go into a folder and configure everything I'm running everywhere.
- Configuration file has the steps needed to set up from scratch - so I can just back up the configuration and data folders and not worry about backing up the programs.
- Control multiple machines from the central location. Dictate where tasks can run.
- [nice to have] Allow certain tasks to running externally, e.g. in AWS ECS or Lambda or similar
- Command-line access for management (web is great for monitoring)
- Flexible scheduling (from strict every minute to ~daily)
- Support for daemons, psuedo-daemons (just run repeatedly with small delays), and periodic tasks.
- Smart alerts - some processes can fail occasionally, but needs to run at least once per day - some processes should never fail. A repeating inaccurate alert is usually just as bad as no alert at all.
- Error code respect (configurable)
- Logs - store the program output, organize it, keep it probably in a date-based structure
- Health checks - if it's a web server, is it still responding to requests? Has it logged something recently? Touched a database file? If not, it's probably dead.
- Alerts support in Telegram and email
- Monitor details about the run - how long did it take? How much CPU did it use? Has it gotten slower over time?
- Dashboard - top-level stats, browse detailed run stats and logs
So much of the configuration/control stuff screams containers, so more and more I'm using Docker for my scripts, even simpler ones.
I'm pretty sure a lot of this is accomplished by existing Docker orchestration tools. Been delaying that rabbit hole for a long time.
I think the key thing that makes this not just a "cron" problem for me, is I want something that monitors and manages both itself and the tasks I want to run, including creating/setting up if not already. I also want to ideally focus my mental energy into a single controller that handles my "keep this running" things all together, be they servers or infrequent tasks.
Doesn't have to be a single project. Might be multiple pieces glued together somehow.