Yamcs HTTP API
- Alarms
- Audit
- Buckets
- Clearance
- Commands
- COP-1
- Database
- Events
- File Transfer
- IAM
- Indexes
- Links
- Management
- MDB Override
- MDB
- Packets
- Parameter Archive
- Processing
- Queue
- Replication
- Rocks DB
- Server
- Sessions
- Stream Archive
- Table
- Time Correlation
- Time
- Timeline
Related
Yamcs Release Notes
Yamcs Server Manual
Source Code Documentation
Download this Document
Subscribe Queue StatisticsΒΆ
Receive updates on queue stats
WebSocket
This method requires to upgrade an HTTP connection to WebSocket. See details on how Yamcs uses WebSocket.
Use the message type queue-stats
.
Input Type
interface SubscribeQueueStatisticsRequest {
// Yamcs instance name.
instance: string;
// Processor name.
processor: string;
}
Output Type
interface CommandQueueInfo {
instance: string;
processorName: string;
name: string;
state: QueueState;
nbSentCommands: number;
nbRejectedCommands: number;
stateExpirationTimeS: number;
entry: CommandQueueEntry[];
order: number;
users: string[];
groups: string[];
minLevel: SignificanceLevelType;
}
Related Types
//One entry (command) in the command queue
interface CommandQueueEntry {
instance: string;
processorName: string;
queueName: string;
id: string;
origin: string;
sequenceNumber: number;
commandName: string;
assignments: CommandAssignment[];
binary: string; // Base64
username: string;
comment: string;
generationTime: string; // RFC 3339 timestamp
// If true, the command has been accepted and is due for release
// as soon as transmission constraints are satisfied.
pendingTransmissionConstraints: boolean;
}
interface CommandAssignment {
name: string;
value: Value;
userInput: boolean;
}
// Union type for storing a value
interface Value {
type: Type;
floatValue: number;
doubleValue: number;
sint32Value: number;
uint32Value: number;
binaryValue: string; // Base64
stringValue: string;
timestampValue: string; // String decimal
uint64Value: string; // String decimal
sint64Value: string; // String decimal
booleanValue: boolean;
aggregateValue: AggregateValue;
arrayValue: Value[];
}
// An aggregate value is an ordered list of (member name, member value).
// Two arrays are used in order to be able to send just the values (since
// the names will not change)
interface AggregateValue {
name: string[];
value: Value[];
}
enum QueueState {
BLOCKED = "BLOCKED",
DISABLED = "DISABLED",
ENABLED = "ENABLED",
}
enum Type {
FLOAT = "FLOAT",
DOUBLE = "DOUBLE",
UINT32 = "UINT32",
SINT32 = "SINT32",
BINARY = "BINARY",
STRING = "STRING",
TIMESTAMP = "TIMESTAMP",
UINT64 = "UINT64",
SINT64 = "SINT64",
BOOLEAN = "BOOLEAN",
AGGREGATE = "AGGREGATE",
ARRAY = "ARRAY",
// Enumerated values have both an integer (sint64Value) and a string representation
ENUMERATED = "ENUMERATED",
NONE = "NONE",
}
enum SignificanceLevelType {
NONE = "NONE",
WATCH = "WATCH",
WARNING = "WARNING",
DISTRESS = "DISTRESS",
CRITICAL = "CRITICAL",
SEVERE = "SEVERE",
}