---
# System prepended metadata

title: WATCHDOG.RS

---

# WATCHDOG.RS

## Estimation:
1. Rewrite Watchdog source base from JS to Rust + advanced error handling ~5d
2. Integration with Prometheus API ~3d
3. Integration with Pushover API ~1d
4. Integration with PagerDuty API ~1d
5. Configuration + CLI ~4d
6. Tests + testing ~5d

risks - 2d (any kind problems with JS code and transaliting it into rust)

**Sum: 21d**

## List of parameters according to functionality

### Watchdog
daemon
ethNodeUrl
ethMasterSk
ethClientArtifactPath
ethClientAddress
watchdogDelay
watchdogErrorDelay
### Prometheus
metricsPort
### Pushover
apiToken
userKey
### PagerDuty
integrationKey


## List of parameters by their storage location

### Config.toml file
daemon
ethNodeUrl
ethClientArtifactPath
ethClientAddress
watchdogDelay
watchdogErrorDelay
metricsPort
### .env file
ethMasterSk
apiToken
userKey
integrationKey


## CLI parameters

### To override some options in the Config.toml file
--daemon
--ethNodeUrl
--ethClientArtifactPath
--ethClientAddress
--watchdogDelay
--watchdogErrorDelay
--metricsPort
### To select the prompt mode for providing the secret key
--interactive/-i


# Watchdog.js
https://miro.com/app/board/uXjVPK9Act8=/?share_link_id=499408767513

![Current flow](https://i.imgur.com/inHEzKw.png)
