Ошибка при отправке сообщений из Ditto в Kafka

Я успешно соединил Eclipse Ditto и Kafka. Я пытаюсь отправить данные через Eclipse Hono в Ditto. То же самое успешно получает данные. Но потребитель Kafka не получает никаких потоков данных.

Пожалуйста, найдите команду curl, которую я использовал:

curl -X POST -i -u devops:foobar -H 'Content-Type: 
application/json' -d '{
"targetActorSelection": "/system/sharding/connection",
"headers": {
"aggregate": false
},
"piggybackCommand": {
"type": "connectivity.commands:createConnection",
"connection": {
    "id": "MyKafkaConnection100",
    "connectionType": "kafka",
    "connectionStatus": "open",
    "uri": "tcp://radsah:confirmmm@srvgal89.deri.ie:9092",
    "specificConfig": {
    "bootstrapServers": "srvgal89.deri.ie:9092",
    "saslMechanism": "plain"
    },
    "failoverEnabled": true,
    "targets": [
          {
         "address": "digital-twins",
          "topics": [
           "_/_/things/twin/events",
           "_/_/things/live/messages"
                        ],
        "authorizationContext": ["nginx:ditto"]
    }],
    "mappingContext": {
        "mappingEngine": "Java",
        "options": {
            "incoming": "function mapToDittoProtocolMsg(\n    headers,\n    textPayload,\n    bytePayload,\n    contentType\n) {\n\n    if (contentType !== \"application/json\") {\n        return null;\n    }\n\n    var jsonData = JSON.parse(textPayload);\n    var temperature = jsonData.temp;\n    var humidity = jsonData.hum;\n    \n    var path;\n    var value;\n    if (temperature != null && humidity != null) {\n        path = \"/features\";\n        value = {\n                temperature: {\n                    properties: {\n                        value: temperature\n                    }\n                },\n                humidity: {\n                    properties: {\n                        value: humidity\n                    }\n                }\n            };\n    } else if (temperature != null) {\n        path = \"/features/temperature/properties/value\";\n        value = temperature;\n    } else if (humidity != null) {\n        path = \"/features/humidity/properties/value\";\n        value = humidity;\n    }\n    \n    if (!path || !value) {\n        return null;\n    }\n\n    return Ditto.buildDittoProtocolMsg(\n        \"org.eclipse.ditto\",\n        headers[\"device_id\"],\n        \"things\",\n        \"twin\",\n        \"commands\",\n        \"modify\",\n        path,\n        headers,\n        value\n    );\n}"
        }
    }
}
}
}' http://srvgal90.deri.ie:8080/devops/piggyback/connectivity?timeout=8000

Когда я проверил то же самое, я получил следующие ошибки:

Пожалуйста, дайте мне знать, если я что-то упустил в моей команде curl. Нужно ли добавлять что-то кроме saslMechanism в конкретный конфиг.

0 ответов

Другие вопросы по тегам