/
task.sandesh
57 lines (49 loc) · 1.19 KB
/
task.sandesh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/*
* Copyright (c) 2013 Juniper Networks, Inc. All rights reserved.
*/
/**
* Message definitions for TaskManager module.
*
* TaskManager module is responsible for scheduling various running tasks
* in a timely and fair manner, adhering to task scheduling policies.
*/
struct SandeshTaskPolicyEntry {
1: string task_name;
2: u32 tasks_running;
}
struct SandeshTaskEntry {
1: i32 instance_id;
2: u64 tasks_created;
3: u64 total_tasks_completed;
4: u32 tasks_running;
5: u32 waitq_size;
6: u32 deferq_size;
}
struct SandeshTaskGroup {
1: string name;
2: u32 task_id;
3: list <SandeshTaskEntry> task_entry_list;
4: optional list <SandeshTaskPolicyEntry> task_policy_list;
}
response sandesh SandeshTaskScheduler {
1: bool running;
2: u64 total_count;
3: i32 thread_count;
4: list <SandeshTaskGroup> task_group_list;
}
request sandesh SandeshTaskRequest {
}
request sandesh SandeshTaskSummaryRequest {
}
/**
* @description: Running tasks information
* @severity: DEBUG
* @cause: Normal operation
*/
trace sandesh TaskTrace {
1: i16 task_id;
2: i16 instance_id;
3: string Msg;
4: u32 latency;
5: string description;
}