Przejdź do treści
Biblioteka skilli
DevOps i chmura · Analiza

query-alert-events

/query-alert-events

Przeszukuje zdarzenia alertów w środowisku Nightingale: aktywne alerty, historię, szczegóły i liczbę zdarzeń.

Repozytorium
nightingale ↗
Licencja
Apache-2.0
Ostatnia zmiana repozytorium
27.10.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
1
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
1
Przestarzałość

Brak sygnałów. Repozytorium zmienione 27.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

Apache-2.0, otwarta: można używać i zmieniać, z zachowaniem licencji i informacji o zmianach.

Co robi i kiedy

Przeszukuje zdarzenia alertów w środowisku Nightingale: aktywne alerty, historię, szczegóły i liczbę zdarzeń.

Oryginalny opis (EN)

Query alert events in a Nightingale (n9e) environment. Use this when the user asks to view alerts, query active alerts, search historical alerts, view alert details, or count alert events.

Jak działa

  1. Prerequisites
  2. Execution Steps
  3. Query Parameter Reference
  4. Response Data Structure
  5. Auxiliary Query APIs
  6. Common Query Examples
  7. Key Considerations
Sekcje z nagłówków SKILL.md, w oryginale · 312 linii, 1 437 słów
Podgląd SKILL.md
---
name: query-alert-events
description: Query alert events in a Nightingale (n9e) environment. Use this when the user asks to view alerts, query active alerts, search historical alerts, view alert details, or count alert events.
tags:
  - internal
---

# Nightingale (n9e) Query Alert Events

Query and view alert events on the Nightingale monitoring platform. Supports querying current active alerts (not yet recovered), historical alerts (recovered/not recovered), and retrieving the detailed information of a single alert.

---

## Prerequisites

The user must provide:
- **n9e address**: e.g. `http://<n9e-host>:<port>`
- **Username/password**: e.g. `<username>/<password>`
- **Query requirement description**: e.g. "what level-1 alerts occurred in the last hour", "view active alerts", "details of alert ID 123"

If the user has not provided the information above, use the AskUserQuestion tool to ask.

---

## Execution Steps

### Step 1: Log in to obtain a Token

```
POST /api/n9e/auth/login
Content-Type: application/json
Body: {"username":"<username>","password":"<password>"}
```

Extract `dat.access_token` from the response, and include `Authorization: Bearer <token>` in all subsequent requests.

### Step 2: Choose the query type based on the user's requirement

Determine which query method to use based on the user's intent:

- **View active alerts** (alerts currently not recovered) → use the active alerts query API
- **View historical alerts** (including recovered and not recovered) → use the historical alerts query API
- **View alert details** (the complete information of a specific alert) → use the alert details API

Decision rules:
- The user mentions "active", "current", "not recovered", "currently alerting" → active alerts
- The user mentions "historical", "past", "recovered", "has recovered" → historical alerts
- The user mentions a specific alert ID → alert details
- When not explicitly specified, query active alerts by default

### Step 3: Execute the query

#### Method 1: Query active alerts

```
GET /api/n9e/alert-cur-events/list?<query_params>
Authorization: Bearer <token>
```

#### Method 2: Query historical alerts

```
GET /api/n9e/alert-his-events/list?<query_params>
Authorization: Bearer <token>
```

#### Method 3: Query alert details

Active alert details:

```
GET /api/n9e/alert-cur-event/<event_id>
Authorization: Bearer <token>
```

Historical alert details:

```
GET /api/n9e/alert-his-event/<event_id>
Authorization: Bearer <token>
```

### Step 4: Format the output

Present the query results to the user in a readable Markdown table or list, including the key information: alert name, severity, trigger time, duration, trigger value, tags, etc.

---

## Query Parameter Reference

### Active alerts query parameters (alert-cur-events/list)

| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| `severity` | string | No | All | Alert severity, comma-separated, e.g. `"1,2"` |
| `query` | string | No | Empty | Search keyword, matches rule name or tags |
| `stime` | int64 | No | No limit | Start time, Unix timestamp (seconds) |
| `etime` | int64 | No | No limit | End time, Unix timestamp (seconds) |
| `hours` | int64 | No | 0 | Last N hours (alternative to stime/etime) |
| `limit` | int | No | 20 | Items per page |
| `p` | int | No | 1 | Page number |
| `bgid` | int64 | No | 0 | Filter by business group ID |
| `rid` | int64 | No | 0 | Filter by alert rule ID |
| `datasource_ids` | string | No | All | Datasource IDs, comma-separated |
| `prods` | string | No | All | Product type, comma-separated, e.g. `"metric,host"` |
| `cate` | string | No | `$all` | Datasource category, comma-separated, e.g. `"prometheus,host"` |
| `my_groups` | bool | No | false | Only show alerts from your own business groups |
| `event_ids` | string | No | Empty | Specific event IDs, comma-separated |

### Historical alerts query parameters (alert-his-events/list)

| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| `severity` | int | No | -1 | Alert severity, single value, -1 means all |
| `is_recovered` | int | No | -1 | Recovery status: 0=not recovered, 1=recovered, -1=all |
| `query` | string | No | Empty | Search keyword, matches rule name or tags |
| `stime` | int64 | No | No limit | Start time, Unix timestamp (seconds) |
| `etime` | int64 | No | No limit | End time, Unix timestamp (seconds) |
| `hours` | int64 | No | 0 | Last N hours (alternative to stime/etime) |
| `limit` | int | No | 20 | Items per page |
| `p` | int | No | 1 | Page number |
| `bgid` | int64 | No | 0 | Filter by business group ID |
| `rid` | int64 | No | 0 | Filter by alert rule ID |
| `datasource_ids` | string | No | All | Datasource IDs, comma-separated |
| `prods` | string | No | All | Product type, comma-separated |
| `cate` | string | No | `$all` | Datasource category, comma-separated |

### severity alert levels

| Value | Meaning |
|---|---|
| 1 | Level-1 alert (Critical) |
| 2 | Level-2 alert (Warning) |
| 3 | Level-3 alert (Info) |

### Time parameter usage

There are two ways to specify a time range (choose one):

**Method 1**: Use the `hours` parameter (recommended, simpler)
- `hours=1` → last 1 hour
- `hours=6` → last 6 hours
- `hours=24` → last 24 hours
- `hours=168` → last 7 days

**Method 2**: Use the `stime` + `etime` parameters (precise control)
- Both are Unix timestamps (seconds)
- When only `stime` is passed, `etime` is automatically set to the current time + 24 hours

---

## Response Data Structure

### List response

```json
{
  "dat": {
    "total": 42,
    "list": [<alert event object>, ...]
  }
}
```

### Active alert event fields

```json
{
  "id": 12345,
  "rule_id": 10,
  "rule_name": "CPU usage too high",
  "rule_note": "CPU usage exceeded 80% for 5 minutes",
  "rule_prod": "metric",
  "severity": 1,
  "cate": "prometheus",
  "cluster": "default",
  "datasource_id": 1,
  "group_id": 2,
  "group_name": "Production environment",
  "hash": "rule_10_xxxx",
  "target_ident": "web-server-01",
  "target_note": "Web server",
  "first_trigger_time": 1712000000,
  "trigger_time": 1712003600,
  "last_eval_time": 1712003600,
  "trigger_value": "85.6",
  "prom_ql": "cpu_usage_active{ident=\"web-server-01\"}",
  "prom_eval_interval": 30,
  "prom_for_duration": 300,
  "tags": ["ident=web-server-01", "cpu=cpu-total"],
  "annotations": {"description": "web-server-01 CPU high"},
  "notify_version": 1,
  "notify_channels": [],
  "notify_groups_obj": [],
  "notify_rules": [{"id": 1, "name": "Ops notification"}],
  "callbacks": [],
  "runbook_url": ""
}
```

### Additional fields for historical alert events

Historical alert events add the following on top of active alerts:

```json
{
  "is_recovered": 1,
  "recover_time": 1712007200
}
```

| is_recovered value | Meaning |
|---|---|
| 0 | Not recovered (alert still triggering) |
| 1 | Recovered |

---

## Auxiliary Query APIs

### Get available event tag keys

```
GET /api/n9e/event-tagkeys
Authorization: Bearer <token>
```

Returns the list of tag keys that can be used for search filtering.

### Get tag values

```
GET /api/n9e/event-tagvalues?key=<tag_key>
Authorization: Bearer <token>
```

Returns the top 20 most frequent values for the specified tag key.

### Get datasources associated with alert events

```
GET /api/n9e/alert-cur-events-datasources
Authorization: Bearer <token>
```

### Get the business group list (for bgid filtering)

```
GET /api/n9e/busi-groups
Authorization: Bearer <token>
```

---

## Common Query Examples

### Example 1: View all active alerts

```
GET /api/n9e/alert-cur-events/list?limit=50
```

### Example 2: View level-1 alerts in the last hour

```
GET /api/n9e/alert-cur-events/list?severity=1&hours=1
```

### Example 3: Search active alerts by keyword

```
GET /api/n9e/alert-cur-events/list?query=CPU&limit=20
```

### Example 4: View historical alerts in the last 24 hours (recovered only)

```
GET /api/n9e/alert-his-events/list?hours=24&is_recovered=1&limit=50
```

### Example 5: View active alerts for a specific business group

```
GET /api/n9e/alert-cur-events/list?bgid=2&limit=50
```

### Example 6: View events triggered by a specific alert rule

```
GET /api/n9e/alert-cur-events/list?rid=10&limit=50
```

### Example 7: Combined filtering (level-1 and level-2 alerts + keyword + time range)

```
GET /api/n9e/alert-cur-events/list?severity=1,2&query=web&hours=6&limit=30
```

### Example 8: Get details of a single alert

```
GET /api/n9e/alert-cur-event/12345
```

---

## Key Considerations

1. **Active alerts vs. historical alerts**: active alerts include only the alerts currently not recovered; historical alerts include both recovered and not-recovered alerts
2. **The severity parameter format differs**: active alerts support comma-separated multiple levels (e.g. `"1,2"`), while historical alerts accept only a single value (e.g. `1`)
3. **No time limit by default**: the active alerts query has no time range limit by default; for historical alerts it is recommended to specify `hours` or `stime`/`etime` to avoid returning too much data
4. **Pagination**: use the `limit` and `p` (page number) parameters for pagination; `limit` defaults to 20
5. **tags format**: the `tags` in the response is a string array in `["key=value"]` format
6. **Time fields are all Unix timestamps (seconds)**: `trigger_time`, `first_trigger_time`, `recover_time`, `last_eval_time`, etc.
7. **query search scope**: the keyword matches both the alert rule name (`rule_name`) and the tags (`tags`)
8. **Alert details URLs differ**: active alerts use `/alert-cur-event/<id>`, historical alerts use `/alert-his-event/<id>` (note the singular/plural)
9. **Output format**: format the results into a Markdown table for the user, including key columns such as alert name, severity, trigger time, target, and trigger value

Wersje

W bazie nie ma innych skilli o nazwie query-alert-events.

Identyczna treść występuje jeszcze w 1 innych folderach na GitHubie. Tu pokazujemy jedną, najlepiej ocenioną kopię.

Migawka bazy z 28.10.2026 · wersja paczki 463277948d37 (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 95alert-ledger
    Odpytuje rejestr wystąpień alertów tylko do odczytu przez toolkit alerts: aktywne alerty, historyczne zakresy otwarć i rozwiązań, wyszukiwanie oraz zdarzenia cyklu życia pojedynczego wystąpienia.
  • 100alert-subscribe-copilot
    Pomaga tworzyć, edytować i diagnozować reguły subskrypcji alertów Nightingale (n9e): kopiowanie zdarzeń do innych zespołów, eskalacja po czasie i routing między grupami biznesowymi.
  • 100ops-troubleshooting
    Pomaga diagnozować problemy i alerty w platformie monitoringu Nightingale (n9e): lokalizacja usterki, analiza alertów, metryk i logów oraz analiza przyczyn źródłowych.
  • 100cx-alerts
    Zarządza definicjami alertów Coralogix przez CLI cx: tworzenie, listowanie, usuwanie, wyciszanie i sprawdzanie statusu alertów oraz badanie aktywnych reguł.
  • 90investigate-alert
    Szybko sprawdza uruchomione alerty Prometheus, stan podów, zdarzenia i logi, a poważne problemy eskaluje dalej.
  • 100investigate-alert
    Bada aktywne alerty OpenShift, ustala przyczynę źródłową i proponuje warianty naprawy.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.