+2
-126
@@ -1,127 +1,3 @@
|
||||
# @backstage/plugin-ilert
|
||||
# Deprecated
|
||||
|
||||
## Introduction
|
||||
|
||||
[iLert](https://www.ilert.com) is a platform for alerting, on-call management and uptime monitoring. It helps teams to reduce response times to critical incidents by extending monitoring tools with reliable alerting, automatic escalations, on-call schedules and other features to support the incident response process, such as informing stakeholders or creating tickets in external incident management tools.
|
||||
|
||||
## Overview
|
||||
|
||||
This plugin gives an overview about ongoing iLert incidents, on-call and uptime monitor status.
|
||||
See who is on-call, which incidents are active and trigger incidents directly from backstage for the configured alert sources.
|
||||
|
||||
In detail this plugin provides:
|
||||
|
||||
- Information details about the person on-call (all escalation levels of the current time)
|
||||
- A way to override the current on-call person
|
||||
- A list of active incidents
|
||||
- A way to trigger a new incident
|
||||
- A way to reassign/acknowledge/resolve an incident
|
||||
- A way to trigger an incident action
|
||||
- A way to trigger an immediate maintenance
|
||||
- A way to disable/enable an alert source
|
||||
- A list of uptime monitors
|
||||
|
||||
## Setup instructions
|
||||
|
||||
Install the plugin:
|
||||
|
||||
```bash
|
||||
# From your Backstage root directory
|
||||
yarn --cwd packages/app add @backstage/plugin-ilert
|
||||
```
|
||||
|
||||
Add it to the `EntityPage.tsx`:
|
||||
|
||||
```ts
|
||||
import {
|
||||
isPluginApplicableToEntity as isILertAvailable,
|
||||
EntityILertCard,
|
||||
} from '@backstage/plugin-ilert';
|
||||
|
||||
// ...
|
||||
<EntitySwitch>
|
||||
<EntitySwitch.Case if={isILertAvailable}>
|
||||
<Grid item sm={6}>
|
||||
<EntityILertCard />
|
||||
</Grid>
|
||||
</EntitySwitch.Case>
|
||||
</EntitySwitch>;
|
||||
// ...
|
||||
```
|
||||
|
||||
> To force an iLert card for each entity just add the `<EntityILertCard />` component. An instruction card will appear if no integration key is set.
|
||||
|
||||
## Add iLert explorer to the app sidebar
|
||||
|
||||
Modify your app routes in [`App.tsx`](https://github.com/backstage/backstage/blob/master/packages/app/src/App.tsx) to include the Router component exported by the plugin - for example:
|
||||
|
||||
```tsx
|
||||
import { ILertPage } from '@backstage/plugin-ilert';
|
||||
<FlatRoutes>
|
||||
// ...
|
||||
<Route path="/ilert" element={<ILertPage />} />
|
||||
// ...
|
||||
</FlatRoutes>;
|
||||
```
|
||||
|
||||
Modify your sidebar in [`Root.tsx`](https://github.com/backstage/backstage/blob/master/packages/app/src/components/Root/Root.tsx) to include the icon component exported by the plugin - for example:
|
||||
|
||||
```tsx
|
||||
import { ILertIcon } from '@backstage/plugin-ilert';
|
||||
<Sidebar>
|
||||
// ...
|
||||
<SidebarItem icon={ILertIcon} to="ilert" text="iLert" />
|
||||
// ...
|
||||
</Sidebar>;
|
||||
```
|
||||
|
||||
## Client configuration
|
||||
|
||||
If you want to override the default URL for api calls and detail pages, you can add it to `app-config.yaml`.
|
||||
|
||||
In `app-config.yaml`:
|
||||
|
||||
```yaml
|
||||
ilert:
|
||||
baseUrl: https://my-org.ilert.com/
|
||||
```
|
||||
|
||||
## Providing the Authorization Header
|
||||
|
||||
In order to make the API calls, you need to provide a new proxy config which will redirect to the [iLert API](https://api.ilert.com/api-docs/) endpoint. It needs an [Authorization Header](https://api.ilert.com/api-docs/#section/Authentication).
|
||||
|
||||
Add the proxy configuration in `app-config.yaml`
|
||||
|
||||
```yaml
|
||||
proxy:
|
||||
...
|
||||
'/ilert':
|
||||
target: https://api.ilert.com
|
||||
allowedMethods: ['GET', 'POST', 'PUT']
|
||||
allowedHeaders: ['Authorization']
|
||||
headers:
|
||||
Authorization: ${ILERT_AUTH_HEADER}
|
||||
```
|
||||
|
||||
Then start the backend, passing the authorization header (bearer token or basic auth) as environment variable:
|
||||
|
||||
```bash
|
||||
$ ILERT_AUTH_HEADER='<ILERT_AUTH>' yarn start
|
||||
```
|
||||
|
||||
## Integration Key
|
||||
|
||||
The information displayed for each entity is based on the alert source integration key.
|
||||
|
||||
### Adding the integration key to the entity annotation
|
||||
|
||||
If you want to use this plugin for an entity, you need to label it with the below annotation:
|
||||
|
||||
```yml
|
||||
apiVersion: backstage.io/v1alpha1
|
||||
kind: Component
|
||||
metadata:
|
||||
name: example
|
||||
annotations:
|
||||
ilert.com/integration-key: [INTEGRATION_KEY]
|
||||
```
|
||||
This package has been moved to the [backstage-community/plugins](https://github.com/backstage/community-plugins) repository. Migrate to using `@backstage-community/plugin-ilert` instead.
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
"version": "0.2.23",
|
||||
"description": "A Backstage plugin that integrates towards iLert",
|
||||
"backstage": {
|
||||
"role": "frontend-plugin"
|
||||
"role": "frontend-plugin",
|
||||
"moved": "@backstage-community/plugin-ilert"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
@@ -61,5 +62,6 @@
|
||||
"react-dom": "^16.13.1 || ^17.0.0 || ^18.0.0",
|
||||
"react-router-dom": "6.0.0-beta.0 || ^6.3.0"
|
||||
},
|
||||
"configSchema": "config.d.ts"
|
||||
"configSchema": "config.d.ts",
|
||||
"deprecated": "This package has been moved to the backstage/community-plugins repository. You should migrate to using @backstage-community/plugin-ilert instead."
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user