GET /api/log/events/?page=1&pageSize=1&direct=desc
Pobiera stronę zdarzeń dziennika przy użyciu stabilnej paginacji.
Uwierzytelnianie: Bearer.
Parametry zapytania
Dział zatytułowany „Parametry zapytania”| Parametr | Typ | Wymagane | Domyślnie | Opis |
|---|---|---|---|---|
page | liczba | nie* | — | Numer strony, począwszy od 1. Używany tylko w pierwszym żądaniu serii. Ignorowany, jeśli podano cursor. |
pageSize | liczba | tak | — | Liczba zdarzeń na stronę. Prawidłowy zakres: 1..8. |
direct | ciąg znaków | nie | "desc" | Kierunek sortowania: "asc" — od najstarszych do najnowszych; "desc" — od najnowszych do najstarszych. |
severityMask | liczba | nie | wszystkie (31) | Maska bitowa poziomów ważności: bit0=DEBUG, bit1=INFO, bit2=WARNING, bit3=ERROR, bit4=FAULT. |
cursor | liczba | nie* | — | Kursor służący do kontynuowania zapytania. Zobacz poniżej. |
*Wymagany jest parametr page albo cursor.
Kursor zapewnia stabilną, sekwencyjną paginację bez duplikatów ani luk.
- Pierwsze żądanie w serii: klient wysyła
page=1i pomijacursor. Serwer rozpoczyna zapytanie odlastSequence(desc) albooldestSequence(asc). - Odpowiedź zawiera
nextCursor, czyli pozycję, od której należy kontynuować. - Kolejne żądania: klient wysyła
cursorz poprzedniej odpowiedzi; parametrpagejest ignorowany. - Koniec zapytania:
nextCursor: nulloznacza, że nie ma więcej dostępnych danych. - Nowa seria (podczas przechodzenia do innej strony interfejsu): klient resetuje
cursori ponownie rozpoczyna odpage=1.
Odpowiedź 200
Dział zatytułowany „Odpowiedź 200”{ "nextCursor": 249, "eventCount": 1, "events": [ { "sequence": 250, "timestamp": "2026-04-16T12:00:00Z", "errorCode": 0, "pending": true, "severity": "WARNING", "dataType": "GENERIC", "generic": { "message": "Channel 1 open circuit" } } ]}Pola odpowiedzi
Dział zatytułowany „Pola odpowiedzi”| Pole | Typ | Opis |
|---|---|---|
nextCursor | liczba|null | Kursor dla następnego żądania. null, jeśli osiągnięto koniec zapytania. |
eventCount | liczba | Liczba zdarzeń w bieżącym zestawie wyników (0..pageSize). |
events | tablica | Zdarzenia w kolejności określonej przez direct. |
Jeśli nie ma więcej dostępnych danych, odpowiedź zawiera eventCount: 0, events: []
oraz nextCursor: null. Nie jest to błąd.
events[]
Dział zatytułowany „events[]”| Pole | Typ | Wymagane | Opis |
|---|---|---|---|
sequence | liczba | tak | Numer sekwencyjny zdarzenia |
timestamp | ciąg znaków | tak | ISO 8601 UTC |
errorCode | liczba | tak | Kod błędu |
pending | wartość logiczna | tak | true, jeśli zdarzenie nie zostało jeszcze potwierdzone w bieżącej sesji zasilania |
severity | ciąg znaków | tak | "DEBUG", "INFO", "WARNING", "ERROR", "FAULT" |
dataType | ciąg znaków | tak | "GENERIC", "FAULT", "NETWORK" |
generic | obiekt | nie | Obecne, jeśli dataType = "GENERIC" |
fault | obiekt | nie | Obecne, jeśli dataType = "FAULT" |
network | obiekt | nie | Obecne, jeśli dataType = "NETWORK" |
generic
Dział zatytułowany „generic”| Pole | Typ | Opis |
|---|---|---|
message | ciąg znaków | Treść zdarzenia |
| Pole | Typ | Opis |
|---|---|---|
taskName | ciąg znaków | Nazwa zadania |
registers | ciąg znaków | Pojedynczy ciąg znaków w postaci PC=... LR=... SP=... CFSR=... HFSR=... MMFAR=... BFAR=... R0=... R1=... R2=... R3=... R12=... xPSR=... |
network
Dział zatytułowany „network”| Pole | Typ | Opis |
|---|---|---|
message | ciąg znaków | Tekst |
remoteIp | ciąg znaków | Zdalny adres IP |
remotePort | liczba | Port zdalny |
localPort | liczba | Port lokalny |
lwipError | liczba | Kod błędu lwIP |
Scenariusz: wypełnienie strony interfejsu 25 zdarzeniami (5 żądań po 5)
Dział zatytułowany „Scenariusz: wypełnienie strony interfejsu 25 zdarzeniami (5 żądań po 5)”GET /api/log/events/?page=1&pageSize=5&direct=desc&severityMask=31→ { "nextCursor": 245, "eventCount": 5, "events": [...] }
GET /api/log/events/?cursor=245&pageSize=5&direct=desc&severityMask=31→ { "nextCursor": 240, "eventCount": 5, "events": [...] }
GET /api/log/events/?cursor=240&pageSize=5&direct=desc&severityMask=31→ { "nextCursor": 235, "eventCount": 5, "events": [...] }
GET /api/log/events/?cursor=235&pageSize=5&direct=desc&severityMask=31→ { "nextCursor": 230, "eventCount": 5, "events": [...] }
GET /api/log/events/?cursor=230&pageSize=5&direct=desc&severityMask=31→ { "nextCursor": null, "eventCount": 5, "events": [...] }Pierwsze żądanie używa page=1; kolejne używają parametru cursor z poprzedniej odpowiedzi.
Parametr cursor zapobiega ponownemu przeszukiwaniu przez serwer już odczytanych rekordów,
co jest szczególnie ważne podczas filtrowania za pomocą parametru severityMask.