private static void SerializeTraceTelemetry(TraceTelemetry traceTelemetry, JsonWriter writer) { writer.WriteStartObject(); traceTelemetry.WriteTelemetryName(writer, TraceTelemetry.TelemetryName); traceTelemetry.WriteEnvelopeProperties(writer); writer.WritePropertyName("data"); { writer.WriteStartObject(); // TODO: MetricTelemetry should write type as this.data.baseType once Common Schema 2.0 compliant. writer.WriteProperty("baseType", traceTelemetry.BaseType); writer.WritePropertyName("baseData"); { writer.WriteStartObject(); writer.WriteProperty("ver", traceTelemetry.Data.ver); writer.WriteProperty("message", traceTelemetry.Message); if (traceTelemetry.SeverityLevel.HasValue) { writer.WriteProperty("severityLevel", traceTelemetry.SeverityLevel.Value.ToString()); } writer.WriteProperty("properties", traceTelemetry.Properties); // TODO: handle case where the property dictionary doesn't need to be instantiated. writer.WriteEndObject(); } writer.WriteEndObject(); } writer.WriteEndObject(); }
private static void SerializeTraceTelemetry(TraceTelemetry traceTelemetry, JsonWriter writer) { writer.WriteStartObject(); traceTelemetry.WriteTelemetryName(writer, "Message"); traceTelemetry.WriteEnvelopeProperties(writer); writer.WritePropertyName("data"); writer.WriteStartObject(); writer.WriteProperty("baseType", traceTelemetry.BaseType); writer.WritePropertyName("baseData"); writer.WriteStartObject(); writer.WriteProperty("ver", traceTelemetry.Data.ver); writer.WriteProperty("message", traceTelemetry.Message); if (traceTelemetry.SeverityLevel.HasValue) { writer.WriteProperty("severityLevel", traceTelemetry.SeverityLevel.Value.ToString()); } writer.WriteProperty("properties", traceTelemetry.Properties); writer.WriteEndObject(); writer.WriteEndObject(); writer.WriteEndObject(); }