Event Hub with Azure Schema Registry and File Blob Storage Configuration Example

This production‑ready configuration example uses Azure Kafka Sender, Azure Schema Registry, and File Storage Provider.

{
   "Modules": {
      "Reader": "File",
      "Sender": "Kafka",
      "TopicManager": "File",
      "Serializer": "Json",
      "StorageProvider" : "File",
      "SchemaGenerator": "Json",
      "SchemaRegistry": "Azure"
   },
   "Configurations": {
      "FileReader": {
         "CaptureDirectory": "C:\\Events\\ChangeCapture",
         "UndeliverableDirectory": "C:\\Events\\ChangeCapture\\undeliverable",
         "RunContinuously": true,
         "Delay": 200
      },
      "FileTopicManager": {
         "TopicFileName": "C:\\Events\\Config\\JadeTopics.config.json"
      },
      "KafkaSender": {
         "Properties": {
            "bootstrap.servers": 
                  "your-eventhub-namespace.servicebus.windows.net:9093",
            "security.protocol": "SASL_SSL",
            "sasl.mechanisms": "PLAIN",
            "sasl.username": "$ConnectionString",
            "sasl.password": "Endpoint=sb://your-eventhub-namespace.
                 servicebus.windows.net/;
                 SharedAccessKeyName=keyname;SharedAccessKey=key"
         }
      },
      "FileStorageProvider": {
         "RootDirectory": "C:\\Events\\ChangeCapture\\Blobs"
      },
      "SizeThresholds": {
         "SlobThresholdBytes": "300KB",
         "BlobThresholdBytes": "300KB"
      },
      "AzureSchemaRegistry": {
         "Endpoint":"https://your-eventhub-namespace.servicebus.windows.net",
         "EventhubNamespace":"your-eventhub-namespace",
         "SchemaGroup":"your-eventhub-json-schema-group",
         "SchemaFormat": "Json"
         }
      },
      "Catalog" : {
         "CatalogDirectory": "C:\\Jade\\System\\Journals"
      },
      "SchemaCache": {
         "CacheRootDirectory": "C:\\Events\\SchemaCache"
      },
      "Loggers":
      [
         {
            "MaxLevel" : "Debug",
            "Sink" : "File",
            "LogFileName": "C:\\Events\\Logs\\JadeEventProducer_Debug.log"
         },
         {
            "MaxLevel" : "Info",
            "Sink" : "File",
            "LogFileName": "C:\\Events\\Logs\\JadeEventProducer_Info.log"
         },
         {
            "MaxLevel" : "Info",
            "Sink" : "Console"
         }
      ]
   }
}