Grafana OnCall engine fork — self-hosted on-call scheduler and alert router
Find a file
Vadim Stepanov a2eed312f9
PD migrator: migrate on-call shifts using public API (#1317)
Allow PD migrator tool to migrate on-call shifts when migrating
schedules (currently it migrates schedules using PD ICal file):
https://github.com/grafana/oncall/issues/1283.

This PR will allow to select the mode of schedule migration via
`SCHEDULE_MIGRATION_MODE_WEB` env variable (`ical` or `web`). Due to
differences in the scheduling systems of PD and OnCall, it's not always
possible to migrate shifts automatically (migration plan will show any
schedules and layers that can't be migrated).

PD rotations that will be possible to migrate:
- Any rotation without restrictions ("restriction" is a PD term for
describing active periods for rotation)
- Daily rotations with daily restrictions
- Weekly rotations with weekly restrictions
- Some weekly rotations with daily restrictions
- Some daily rotations with weekly restrictions

There will be a separate PR to update the
[instruction](https://github.com/grafana/oncall/tree/dev/tools/pagerduty-migrator#readme)
since this one is pretty huge already.
2023-02-23 11:34:03 +00:00
.github don't run changelog/public-docs CI checks on merge_group Github events (#1388) 2023-02-22 16:18:25 +01:00
dev Add database migrations linter (#1020) 2023-02-06 16:01:37 +08:00
docs Add App Store link to web UI (#1328) 2023-02-16 10:49:37 +00:00
engine PD migrator: migrate on-call shifts using public API (#1317) 2023-02-23 11:34:03 +00:00
examples/terraform Terraform examples 2022-08-11 14:32:39 +05:00
grafana-plugin Handling throttling error on frontend when verifying phone number (#1375) 2023-02-22 16:29:54 +00:00
helm Correct init command for Postgres Database (#1243) 2023-02-02 07:46:59 +01:00
tools PD migrator: migrate on-call shifts using public API (#1317) 2023-02-23 11:34:03 +00:00
.drone.yml update vault secret reference (#1252) 2023-01-31 09:40:32 +01:00
.gitignore enterprise dev changes + few other small changes (#802) 2022-11-09 07:21:33 +01:00
.markdownlint.json add precommit rules for markdown/json files (#915) 2022-12-01 14:26:54 +01:00
.markdownlintignore Add tracing support 2022-12-19 17:15:06 +08:00
.nvmrc One startup command to rule them all (#760) 2022-11-07 16:34:43 +01:00
.pre-commit-config.yaml fix failing lint github actions job due to issue w/ isort version (#1249) 2023-01-30 11:43:15 +01:00
CHANGELOG.md PD migrator: migrate on-call shifts using public API (#1317) 2023-02-23 11:34:03 +00:00
CODE_OF_CONDUCT.md add precommit rules for markdown/json files (#915) 2022-12-01 14:26:54 +01:00
docker-compose-developer.yml Fix local dev setup slowness (#1270) 2023-02-02 09:08:48 +00:00
docker-compose-mysql-rabbitmq.yml Use latest Grafana Container Images (#1227) 2023-02-02 07:46:39 +01:00
docker-compose.yml Use latest Grafana Container Images (#1227) 2023-02-02 07:46:39 +01:00
GOVERNANCE.md add precommit rules for markdown/json files (#915) 2022-12-01 14:26:54 +01:00
LICENSE World, meet OnCall! 2022-06-03 08:09:47 -06:00
LICENSING.md add precommit rules for markdown/json files (#915) 2022-12-01 14:26:54 +01:00
MAINTAINERS.md add precommit rules for markdown/json files (#915) 2022-12-01 14:26:54 +01:00
Makefile Remove mobile_app_settings DynamicSetting (#1268) 2023-02-02 13:21:04 +00:00
README.md Revert "testing branch merge strategy" 2023-01-05 12:46:55 +01:00
screenshot.png Merge dev to main (#54) 2022-06-13 16:39:58 -06:00
SECURITY.md add precommit rules for markdown/json files (#915) 2022-12-01 14:26:54 +01:00

Grafana OnCall

Latest Release License Docker Pulls Slack Discussion Build Status

Developer-friendly incident response with brilliant Slack integration.

  • Collect and analyze alerts from multiple monitoring systems
  • On-call rotations based on schedules
  • Automatic escalations
  • Phone calls, SMS, Slack, Telegram notifications

Getting Started

We prepared multiple environments:

  1. Download docker-compose.yml:

    curl -fsSL https://raw.githubusercontent.com/grafana/oncall/dev/docker-compose.yml -o docker-compose.yml
    
  2. Set variables:

    echo "DOMAIN=http://localhost:8080
    COMPOSE_PROFILES=with_grafana  # Remove this line if you want to use existing grafana
    SECRET_KEY=my_random_secret_must_be_more_than_32_characters_long" > .env
    
  3. Launch services:

    docker-compose pull && docker-compose up -d
    
  4. Go to OnCall Plugin Configuration, using log in credentials as defined above: admin/admin (or find OnCall plugin in configuration->plugins) and connect OnCall plugin with OnCall backend:

    OnCall backend URL: http://engine:8080
    
  5. Enjoy! Check our OSS docs if you want to set up Slack, Telegram, Twilio or SMS/calls through Grafana Cloud.

Update version

To update your Grafana OnCall hobby environment:

# Update Docker image
docker-compose pull engine

# Re-deploy
docker-compose up -d

After updating the engine, you'll also need to click the "Update" button on the plugin version page. See Grafana docs for more info on updating Grafana plugins.

Join community

Stargazers over time

Stargazers over time

Further Reading