Telemetry System class

The Telemetry System class sets up the system poller and optionally, the iHealth poller. Users have the option of either defining both pollers inside of the Telemetry_System class or defining them outside of the class and referencing them by name.

The minimal declaration defines My_System_Minimal targeted to localhost on port 8100, using the http protocol, and the user is admin.

System poller

The system poller collects and normalizes statistics from a system, such as BIG-IP, on a configurable interval for information such as device statistics, virtual server statistics, pool statistics, individual pool member statistics, and more.

 7
 8
 9
10
11
12
"My_System_Minimal": {
     "class": "Telemetry_System",
     "systemPoller": {
         "interval": 60
     }
 }
Parameter Options Description/Notes
interval 60 - 6000, 300 This value determines the polling period in seconds. By default, Telemetry Streaming collects statistics every 300 seconds.

iHealth poller

The iHealth poller creates a QKView on the target system, downloads it to the host on which Telemetry Streaming is running, uploads QKView to F5 iHealth Service from the host on which TS is running, and fetches the F5 iHealth Service QKView analysis. For more information on iHealth see the documentation on DevCentral. To see an example of a declaration with referenced pollers instead of inline, see Example 5: Referenced Pollers.

iHealth Poller minimal declaration:

 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
 "My_System_Minimal": {
     "class": "Telemetry_System",
     "iHealthPoller": {
         "username": "IHEALTH_ACCOUNT_USERNAME",
         "passphrase": {
             "cipherText": "IHEALTH_ACCOUNT_PASSPHRASE"
         },
         "interval": {
             "timeWindow": {
                 "start": "23:15",
                 "end":   "02:15"
             }
         }
     }
 }

iHealth Poller full declaration:

 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
"My_System_Minimal": {
     "class": "Telemetry_System",
     "iHealthPoller": {
         "username": "IHEALTH_ACCOUNT_USERNAME",
         "passphrase": {
             "cipherText": "IHEALTH_ACCOUNT_PASSPHRASE"
         },
         "proxy": {
             "host": "127.0.0.1",
             "protocol": "http",
             "port": 80,
             "username": "username",
             "passphrase": {
                 "cipherText": "passphrase"
             }
         },
         "interval": {
             "timeWindow": {
                 "start": "23:15",
                 "end":   "06:15"
             },
             "frequency": "monthly",
             "day": "5"
         }
     }
}
Parameter Options Description/Notes
class Telemetry_iHealth_Poller String: The class for the iHealth poller must always be Telemetry_iHealth_Poller, do not change this value.
enable true, false Boolean: this value enables or disables the iHealth Poller. By default it is set to true.
trace true, false Boolean: this value enables or disables tracing. By default it is set to false.
username   Required. String: use your F5 iHealth Service Account username.
passphrase   Required. Object: use your F5 iHealth Service Account passphrase.
proxy   Optional. Object: this value allows you to send QKView to F5 iHealth Service via proxy.
interval   Required. Object: this value determines the polling period in seconds.
interval.timeWindow   Required. Object: this value sets the operating window.
interval.timeWindow.start   Required. String: this value sets the iHealth poller operating window start time in the format HH:MM. The minimum difference between start and end time is 120 minutes.
interval.timeWindow.end   Required. String: this value sets the iHealth poller operating window end time in the format HH:MM. The minimum difference betweent start and end is 120 minutes.
interval.frequency daily, weekly, monthly Required. String: this value sets the iHealth poller operating interval. The default value is daily.
interval.day 0-7 or Monday-Sunday Integer or string: this value is required only when interval.frequency is weekly or monthly. When interval.frequency is weekly, then interval.day represents a day of the week. The value can be a string from Monday to Sunday (lowercase will work) or the value can be an integer from 0 to 7 where both 0 and 7 represent Sunday. When interval.frequency is monthly then interval.day represents the day of the month. The value should be an integer from 1 to 31. If interval.day is 31 and the last day of the month is 28, 29, or 30, then the actual last day of the month will be used.