1
0
mirror of https://github.com/nxshock/gron.git synced 2024-11-27 03:41:00 +05:00

Move job examples to separate dir

This commit is contained in:
nxshock 2022-11-20 14:56:40 +05:00
parent d9d9f0dcf0
commit efa20ae0f0
4 changed files with 37 additions and 39 deletions

View File

@ -5,45 +5,7 @@
## Usage
1. Create `gron.d` directory
2. Create job config in `gron.d/job1.conf` ([TOML](https://en.wikipedia.org/wiki/TOML) format):
```toml
Type = "cmd" # command execution
Category = "Test jobs" # jobs category name
Cron = "* * * * *" # cron instructions
2. Create job config in `gron.d/job1.conf` ([TOML](https://en.wikipedia.org/wiki/TOML) format). See examples in [_jobExamples](_jobExamples).
Command = "echo Hello" # command to execute
```
SQL job:
```toml
Type = "sql" # sql execution
Cron = "* * * * *" # cron instructions
Description = "execute procedure every minute" # job description
Driver = "pgx" # "pgx" for Postgresql, "oracle" for Oracle, "sqlserver" for Microsoft SQL Server
ConnectionString = "postgres://login:password@host:port/database?sslmode=disable" # each driver has different syntax
SqlText = "CALL procedure" # command to execute
```
Add other options if needed:
```toml
Description = "print Hello every minute" # job description
NumberOfRestartAttemts = 3 # number of restart attemts
RestartSec = 5 # the time to sleep before restarting a job (seconds)
RestartRule = "on-error" # Configures whether the job shall be restarted when the job process exits
OnSuccessCmd = "echo 'Job finished.'" # execute cmd on job success
OnErrorCmd = "echo 'Error occurred: {{.Error}}'" # execute cmd on job error
OnSuccessHttpGetUrl = ""
OnErrorHttpGetUrl = "http://127.0.0.1/alerts?title={{.JobName}}%20failed&message={{.Error}}&tags=warning"
OnSuccessHttpPostUrl = "http://127.0.0.1/alerts"
OnSuccessMessageFmt = "Job {{.JobName}} finished."
OnErrorHttpPostUrl = "http://127.0.0.1/alerts"
OnErrorMessageFmt = "Job {{.JobName}} failed:\n\n{{.Error}}"
```
3. Launch `gron` binary
4. HTTP interface available on http://127.0.0.1:9876

View File

@ -0,0 +1,23 @@
Type = "cmd" # command execution
Category = "Test jobs" # jobs category name
Description = "print 'Hello' every minute" # job description
Cron = "* * * * *" # cron instructions
Command = "echo Hello" # command to execute
NumberOfRestartAttemts = 3 # number of restart attemts
RestartSec = 5 # the time to sleep before restarting a job (seconds)
RestartRule = "on-error" # Configures whether the job shall be restarted when the job process exits
OnSuccessCmd = "echo 'Job finished.'" # execute cmd on job success
OnErrorCmd = "echo 'Error occurred: {{.Error}}'" # execute cmd on job error
# HTTP client callbacks
OnSuccessHttpGetUrl = "http://127.0.0.1/alerts?title={{.JobName}}%20finished"
OnErrorHttpGetUrl = "http://127.0.0.1/alerts?title={{.JobName}}%20failed&message={{.Error}}&tags=warning"
OnSuccessHttpPostUrl = "http://127.0.0.1/alerts"
OnSuccessMessageFmt = "Job {{.JobName}} finished."
OnErrorHttpPostUrl = "http://127.0.0.1/alerts"
OnErrorMessageFmt = "Job {{.JobName}} failed:\n\n{{.Error}}"

6
_jobExamples/basic.conf Normal file
View File

@ -0,0 +1,6 @@
Type = "cmd" # command execution
Category = "Test jobs" # jobs category name
Description = "print 'Hello' every minute" # job description
Cron = "* * * * *" # cron instructions
Command = "echo Hello" # command to execute

View File

@ -0,0 +1,7 @@
Type = "sql" # sql execution
Cron = "* * * * *" # cron instructions
Description = "execute procedure every minute" # job description
Driver = "pgx" # "pgx" for Postgresql, "oracle" for Oracle, "sqlserver" for Microsoft SQL Server
ConnectionString = "postgres://login:password@host:port/database?sslmode=disable" # each driver has different syntax
SqlText = "CALL procedure" # command to execute