如何知道客户端已连接Eventhub

时间:2019-06-04 05:12:55

标签: node.js azure-eventhub

我不知道如何判断客户端是否连接。 如果EVENTHUB_CONNECTION_STRING完全错误,则会引发异常。 但是,如果密钥错误,该怎么办?如果不会抛出异常。 我如何判断客户端已成功连接。

我的代码在下面。

cm = ConfusionMatrix(actual_vector=y_test, predict_vector=y_predicted)

print(cm)

1 个答案:

答案 0 :(得分:0)

createFromConnectionString(connStr, path)返回一个promise,您应等待它或为它通过连接或错误解决时注册一个回调。另外,要发送数据,您还需要一个分区ID,可以使用eventHubClient.getPartitionIds()

进行检索。
var EventHubClient = require('azure-event-hubs').EventHubClient; 

const connectionString = "EVENTHUB_CONNECTION_STRING"; 
const entityPath = "EVENTHUB_NAME"; 
const connStr = process.env[connectionString] || ""; 
const path = process.env[entityPath] || "";

  var client;
  EventHubClient.createFromConnectionString(connStr, path).then((connection) => {
    client = connection;
    ( async function () {
      const pids = client.getPartitionIds();
      const eventData = {
        body: {
          test1: aaa,
          test2: bbb
        }
      };
      pids.forEach((id) => {
        client.send(eventData, id).then((success) => {
          console.log(success);
        }, (error) => {
          console.log(error);

        });

      });
    }())
  }, (connectionError) => {
    console.log(connectionError);
  });