我正在尝试使用Kusto.Data NuGet(C#)将应用程序日志数据提取到Azure数据资源管理器。我可以使用以下方法检索数据,但在检索数据时无法正常工作。我是否使用了错误的插入查询模式?
var kustoConnectionStringBuilder =
new KustoConnectionStringBuilder(kustoUri, database)
{
FederatedSecurity = true,
InitialCatalog = database,
UserID = user,
Password = password,
Authority = tenantId
};
var client = KustoClientFactory.CreateCslQueryProvider(kustoConnectionStringBuilder);
string query = "ingest inline into table Device <| 1,DeviceId";
client.ExecuteQuery(query);
错误消息:语法错误:无法解析查询:发生识别错误。有人可以帮我吗? 我的设备表目前有两列:ID(int),Description(string)
答案 0 :(得分:1)
您发布的代码段存在几个问题:
a。。您使用的是ICslQueryProvider
而不是ICslAdminProvider
和ExecuteQuery()
而不是ExecuteControlCommand()
。 .ingest
(或其他以点(.
开头的内容)是控制命令:https://docs.microsoft.com/en-us/azure/kusto/management/#differentiating-control-commands-from-queries)
b。。您在.
(应为ingest
)之前缺少点(.ingest
)。
c。。您使用的是direct ingestion
而不是queued ingestion
(没关系,只要您了解这仅是出于测试目的)。在此处了解更多信息:https://docs.microsoft.com/en-us/azure/kusto/management/data-ingestion/#ingestion-methods