Mit der Aktion rawDataGetValues kann man Rohdaten aus dem Corvus holen. Dabei werden die Rohdaten, wie der Name schon andeutet, nicht aufbereitet, sondern werden eins zu eins übergeben.
Das bedeutet, das sind die Original-Daten die Corvus von den Geräten bekommen hat. Eine Umrechnung findet nicht statt.
Geliefert werden die Daten im rawdatas Block
Anfrage:
{
"action": "rawDataGetValues",
"actionParameter": {
"dataScope": "INTERFACE_TRAFFIC",
"deviceId": 11,
"ifIndex": 1,
"minTs": 1663655228,
"maxTs": 1663655528
}
}
Antwort :
{
"action": "rawDataGetValues",
"actionParameter": {
"dataScope": "INTERFACE_TRAFFIC",
"minTs": 1663655228,
"maxTs": 1663655528,
"deviceId": 11,
"ifIndex": 1
},
"rawdatas": [
{
"ts": 1663655228,
"in": "65688",
"out": "65688"
},
{
"ts": 1663655287,
"in": "65743",
"out": "65688"
},
{
"ts": 1663655348,
"in": "65780",
"out": "65899"
},
{
"ts": 1663655409,
"in": "66599",
"out": "66322"
},
{
"ts": 1663655469,
"in": "67676",
"out": "67632"
}
]
}
Das Holen von Daten erfordert einige Zwangsparameter.
| Parameter Name | Datentyp | Default | Beschreibung |
|---|---|---|---|
| .actionParameter.dataScope | String | - | Der Name der Daten die man haben will (siehe unten) |
| .actionParameter.deviceId | Integer | 0 | Sofern der Scope es erfordert, muss hier die Geräte ID eingetragen werden |
| .actionParameter.ifIndex | Integer | 0 | Sofern der Scope es erfordert, muss hier der Interface-Index eingetragen werden |
| .actionParameter.minTs | Integer | 0 | Der minimalste Zeitstempel, mit dem die Daten anfangen sollen |
| .actionParameter.maxTs | Integer | 0 | Der maximale Zeitstempel, an dem die Daten aufhören sollen |
Die Felder minTs und maxTs haben besondere Eigenschaften:
Was man nicht machen sollte, ist ein minTs = 0 und ein maxTs = -1. Das dauert nicht nur ewig, sondern überträgt auf irrsinnig viele Daten.
Was man tun sollte ist, das System Incremental abzufragen. Dabei merkt dich der Aufrufer den letzten Timestamp und setzt ihn in minTs + 1 ein und lässt maxTs einfach weg.
Jeder Scope beinhaltet andere Daten und erfordert auch andere Parameter. Die folgende Tabelle spezifiziert das:
| Scope | Erforderlich | Bemerkungen |
|---|---|---|
| INTERFACE_TRAFFIC | deviceId + ifIndex | Damit werden die beiden Interface Byte Counter zu einem bestimmten Datum zurückgegeben. Inbound/Outbound am Interface |
Hier eine vollständige Beschreibung aller möglichen Datenfelder der Antwort
| Parameter Name | Datentyp | Beschreibung |
|---|---|---|
| .rawdatas | Liste | Eine Liste aller Roh Daten |
| .rawdatas[].ts | Integer | Der Zeitstempel in UTC Sekunden (der Wert ist ein 32bit Unsigned Integer) |
| .rawdatas[].in | Long | Bei INTERFACE_TRAFFIC, die Anzahl der Bytes die INBOUND in das Interface reingelaufen sind (Unsigned 64bit) |
| .rawdatas[].out | Long | Bei INTERFACE_TRAFFIC, die Anzahl der Bytes die OUTBOUND aus dem Interface rausgelaufen sind (Unsigned 64bit) |
Corvus Help - 28.February 2026 03:33:38 UTC - Commit 667ccc2e