-
Notifications
You must be signed in to change notification settings - Fork 374
/
Copy pathevent_telemetry_metric.py
69 lines (57 loc) · 1.98 KB
/
event_telemetry_metric.py
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
58
59
60
61
62
63
64
65
66
67
68
69
# coding=utf-8
#
# Copyright © 2011-2020 Splunk, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"): you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
from splunklib.wire._internal.telemetry_metric import TelemetryMetric
class EventTelemetryMetric(TelemetryMetric):
METRIC_TYPE = 'event'
def __init__(self, component, data,
opt_in_required=2,
version=None,
timestamp=None,
visibility=None,
index_data=None,
user_id=None,
experience_id=None):
super(EventTelemetryMetric, self).__init__(
EventTelemetryMetric.METRIC_TYPE,
component,
data,
opt_in_required=opt_in_required,
version=version,
timestamp=timestamp,
visibility=visibility,
index_data=index_data
)
self.user_id = user_id
self.experience_id = experience_id
@property
def user_id(self):
return self._user_id
@user_id.setter
def user_id(self, value):
self._user_id = value
@property
def experience_id(self):
return self._experience_id
@experience_id.setter
def experience_id(self, value):
self._experience_id = value
def to_wire(self):
wire = super(EventTelemetryMetric, self).to_wire()
if self.user_id is not None:
wire['userID'] = self.user_id
if self.experience_id is not None:
wire['experienceID'] = self.experience_id
return wire