WIP : Elektron Logging library #16
6 changed files with 26 additions and 12 deletions
16
docs/Logs.md
16
docs/Logs.md
|
@ -11,4 +11,18 @@ _Elektron_ logs can be categorized into the following.
|
|||
* _**Scheduling Policy Switching Logs**_ - When scheduling policy switching is enabled (`-switchSchedPol` is used when launching _Elektron_), the following information is logged.
|
||||
* [**Scheduling Policy Switch trace (SPS)**](data/withSpsEnabled/SchedulingPolicySwitchTrace.md) - Every time _Elektron_ switches to a different scheduling policy, the _name_ of the scheduling policy and the corresponding _time stamp_ is logged.<br>
|
||||
* [**SCHED_WINDOW**](data/withSpsEnabled/SchedulingWindow.md) - For every switch, the size of the scheduling window and the name of the scheduling policy is logged.
|
||||
* [**CLSFN_TASKDIST_OVERHEAD**](data/withSpsEnabled/TaskClassificationOverhead.md) - If the switching criteria is task distribution based, then the time taken to classify the tasks into low power consuming and high power consuming, and then to determine the task distribution is logged.
|
||||
* [**CLSFN_TASKDISTR_OVERHEAD**](data/withSpsEnabled/TaskClassificationOverhead.md) - If the switching criteria is task distribution based, then the time taken to classify the tasks into low power consuming and high power consuming, and then to determine the task distribution is logged.
|
||||
|
||||
_Elektron_ logs can be configured through [Log config file](../logConfig.yaml). The following is the format for configuration.
|
||||
```
|
||||
<logtype>:
|
||||
enabled: <true/false>
|
||||
filenameExtension: <filename extension>
|
||||
minLogLevel: <minimum log level>
|
||||
allowOnConsole: <true/false>
|
||||
```
|
||||
The file has default configurations set. One can also configure the above fields for every log type.
|
||||
* `enabled` - Enable or disable a specific log type.
|
||||
* `filenameExtension` - Provide the file extension for specific log type.
|
||||
* `minLogLevel` - Provide a minimum log level above which all logs should be logged. This is available only for Console log type. The default value is debug).
|
||||
* `allowOnConsole` - Allow or Disallow a specific log type on the console.
|
||||
|
|
|
@ -25,12 +25,12 @@ myhost:kernel.all.cpu.sys
|
|||
|
||||
When we run the `pmdumptext` command mentioned above for 5 seconds, the PCP log from _Elektron_ would be as shown below.
|
||||
```
|
||||
<yyyy/mm/dd> <hh:mm:ss> myhost:kernel.all.cpu.user,myhost:kernel.all.cpu.sys
|
||||
<yyyy/mm/dd> <hh:mm:ss> <myhost user cpu time>,<myhost system cpu time>
|
||||
<yyyy/mm/dd> <hh:mm:ss> <myhost user cpu time>,<myhost system cpu time>
|
||||
<yyyy/mm/dd> <hh:mm:ss> <myhost user cpu time>,<myhost system cpu time>
|
||||
<yyyy/mm/dd> <hh:mm:ss> <myhost user cpu time>,<myhost system cpu time>
|
||||
<yyyy/mm/dd> <hh:mm:ss> <myhost user cpu time>,<myhost system cpu time>
|
||||
[<loglevel>]: <yyyy-mm-dd> <hh:mm:ss> myhost:kernel.all.cpu.user,myhost:kernel.all.cpu.sys
|
||||
[<loglevel>]: <yyyy-mm-dd> <hh:mm:ss> <myhost user cpu time>,<myhost system cpu time>
|
||||
[<loglevel>]: <yyyy-mm-dd> <hh:mm:ss> <myhost user cpu time>,<myhost system cpu time>
|
||||
[<loglevel>]: <yyyy-mm-dd> <hh:mm:ss> <myhost user cpu time>,<myhost system cpu time>
|
||||
[<loglevel>]: <yyyy-mm-dd> <hh:mm:ss> <myhost user cpu time>,<myhost system cpu time>
|
||||
[<loglevel>]: <yyyy-mm-dd> <hh:mm:ss> <myhost user cpu time>,<myhost system cpu time>
|
||||
```
|
||||
|
||||
## Power Measurements
|
||||
|
|
|
@ -9,6 +9,6 @@ The scheduled trace logs are written to a file named _\<logFilePrefix\>\_\<times
|
|||
|
||||
The format of the data logged is as shown below.
|
||||
```
|
||||
<yyyy/mm/dd> <hh:mm:ss> <hostname>:<task ID>
|
||||
[<loglevel>]: <yyyy-mm-dd> <hh:mm:ss> <hostname>=<task ID>
|
||||
```
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ The logs are written to a file named _\<logFilePrefix\>\_\<timestamp\>\_schedPol
|
|||
|
||||
The format of the data logged is as shown below.
|
||||
```
|
||||
<yyyy/mm/dd> <hh:mm:ss> <sched policy name>
|
||||
[<loglevel>]: <yyyy-mm-dd> <hh:mm:ss> Name=<sched policy name>
|
||||
```
|
||||
|
||||
_Note: The names of the scheduling policies can be found [here](https://gitlab.com/spdf/elektron/blob/master/schedulers/store.go#L14)_
|
||||
|
|
|
@ -8,5 +8,5 @@ The logs are written to a file named _\<logFilePrefix\>\_\<timestamp\>\_schedWin
|
|||
|
||||
The format of the data logged is as shown below.
|
||||
```
|
||||
<yyyy/mm/dd> <hh:mm:ss> <sched window size> <sched policy name>
|
||||
```
|
||||
[<loglevel>]: <yyyy-mm-dd> <hh:mm:ss> Window size=<sched window size>, Name=<sched policy name>
|
||||
```
|
||||
|
|
|
@ -8,7 +8,7 @@ The logs are written to a file named _\<logFilePrefix\>\_\<timestamp\>\_classifi
|
|||
|
||||
The format of the data logged is as shown below.
|
||||
```
|
||||
<yyyy/mm/dd> <hh:mm:ss> <overhead>
|
||||
[<loglevel>]: <yyyy-mm-dd> <hh:mm:ss> Overhead in microseconds=<overhead>
|
||||
```
|
||||
|
||||
_Note: The classification overhead is logged in **microseconds**._
|
||||
|
|
Reference in a new issue