@@ -8,7 +8,7 @@ use chrono::{DateTime, Utc};
8
8
use log:: { debug, error} ;
9
9
use once_cell:: sync:: Lazy ;
10
10
11
- use cpp_client_telemetry_sys:: { evt_prop, evt_prop_v, evt_prop_t_TYPE_STRING, evt_prop_t_TYPE_TIME} ;
11
+ use cpp_client_telemetry_sys:: { evt_prop, evt_prop_v, evt_prop_t_TYPE_STRING, evt_prop_t_TYPE_TIME, evt_prop_t_TYPE_INT64 } ;
12
12
13
13
#[ derive( Clone , Debug ) ]
14
14
pub struct StringProperty {
@@ -107,9 +107,26 @@ impl TelemetryItem {
107
107
for key in self . data . keys ( ) {
108
108
let value = self . data . get ( key) . expect ( "Unable to get value" ) ;
109
109
match value {
110
- TelemetryProperty :: String ( value) => { }
111
- TelemetryProperty :: Int ( value) => { }
112
- _ => error ! ( "Unknown TelemetryProperty Type: [{}]" , key) ,
110
+ TelemetryProperty :: String ( value) => {
111
+ properties. push ( evt_prop {
112
+ name : StringProperty :: new ( key) . as_ptr ( ) ,
113
+ type_ : evt_prop_t_TYPE_STRING,
114
+ value : evt_prop_v {
115
+ as_string : value. as_ptr ( )
116
+ } ,
117
+ piiKind : 0
118
+ } )
119
+ }
120
+ TelemetryProperty :: Int ( value) => {
121
+ properties. push ( evt_prop {
122
+ name : StringProperty :: new ( key) . as_ptr ( ) ,
123
+ type_ : evt_prop_t_TYPE_INT64,
124
+ value : evt_prop_v {
125
+ as_int64 : value. clone ( )
126
+ } ,
127
+ piiKind : 0
128
+ } )
129
+ }
113
130
}
114
131
}
115
132
0 commit comments