Open
Description
Sample code:
var azmon = new AzureMonitorExporterBuilder()
.connectionString(...)
.buildLogRecordExporter();
var logProvider = SdkLoggerProvider.builder()
.addLogRecordProcessor(SimpleLogRecordProcessor.create(OtlpGrpcLogRecordExporter.getDefault()))
.addLogRecordProcessor(SimpleLogRecordProcessor.create(azmon))
.build();
EventLoggerProvider eventLoggerProvider = SdkEventLoggerProvider.create(logProvider);
var logger = eventLoggerProvider.get("test-logger");
var event = new GenAIChoice()
.setId(1)
.setFinishReasons(new String[]{"stop", "length"})
.setMessage(new GenAIMessage().setContent("test content"));
logger.builder("test-event")
.put("id", Value.of(event.getId()))
.put("finishReasons", Value.of(Arrays.stream(event.getFinishReasons()).map(Value::of).toArray(Value[]::new)))
.put("message", event.getMessage().toValue())
.emit();
It's effectively impossible to parse what the exporter produces. It should produce valid json since KQL provides extensive support for it making it easy to parse and query corresponding content.