Giter VIP home page Giter VIP logo

watchdog's Introduction

๐Ÿ•โ€๐Ÿฆบ Watchdog

An application to ensure that your interactive installation software (ahem, TouchDesigner application) is running 24/7.

Of course, your deployed application is perfectly bug free, performant, and definitely not ever never going to crash, and leave a giant LED wall empty or frozen. But... wouldn't you sleep better at night, knowing that even if the impossible happened, and some quantum bits were flipped, and it did crash, that the crash would automatically be detected, the application restarted, an email alert sent to your team, all before your client could notice and call you out freaking out that "ITS BROKEN!"

Why not pm2?

PM2 is an excellent piece of software to persist many types of applications, but I have been unable to integrate it in a clean, successful, and controlable way with TouchDesigner, and other miscellaneous visual-output applications--where the process itself might not fully be gone, and from pm2's perspective all is well, but in reality, the app is frozen. Watchdog maintains a more accurate health status by pinging for heartbeats, over OSC on localhost.

Stay Tuned

This is a work in progress, entirely un-ready for production, and is a rewrite of a minimally scoped but perfectly viable version I built in Node.js. I am also using this project as a means to learn Rust.

Further explanation and documentation to come.

TO DO:

Config

  • Overlay to not change config while apps are running, kill button here
  • PC Reboot chron task
  • PC run on startup
  • Group name: kill & start apps together if names match
  • Email client UI spruce up
  • Email client password encrypt/decrypt but store in local json
  • Email custom types with validation
  • and more..

Apps

  • Send/Recv osc via threads for each watched app
  • Timing engine thing, for heartbeat timeouts, restart delays etc
  • Launch apps via CMD strings to execute..?
  • Kill apps via PID
  • Relaunch apps
  • Design ui
  • and more..

Stats

  • Design the ui
  • Store to json file?
  • etc...

watchdog's People

Contributors

blakerutledge avatar

Stargazers

John Noonan avatar

Watchers

James Cloos avatar  avatar

watchdog's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.