1

我有一个要分析的应用程序数据的有效查询。目前它使用ago(14d).

现在我想使用一个包含应用程序当前版本的发布日期的值。由于我还没有找到将新数据库表添加到包含 azure Analytics 中的日志数据的现有数据库的方法,因此我在 azure 中创建了一个新数据库并在那里输入了我的数据。

现在我只是不知道,我是否可以从 Azure 日志分析的 Web 查询界面中访问该数据库,或者我是否必须为此使用其他工具?

我希望有人可以帮助我。与 azure 一样,有很多关于它的内容可供阅读,但对于我的问题没有任何具体内容(或者至少我还没有找到它)。

是的,我知道如何使用 a 将数据插入到查询中let,但是由于我想在不同的查询中使用相同的数据,所以可以从所有查询中访问的外部位置将是我更喜欢的解决方案。

提前谢谢。特立独行

4

2 回答 2

1

您不能直接访问数据库。您最好在 blob 存储中使用 csv/json 文件。在以下示例中,我上传了一个带有 csv 数据的 txt 文件,如下所示:

2a6c024f-9093-434c-b3b1-000821a15b1a,"Customer 1"
28a658a8-5466-45ea-862c-003b20507dd4,"Customer 2"
c46fb949-d807-4eea-8de4-005dd4beb39a,"Customer 3"
e05b67ee-ff83-4805-b004-0064449f196c,"Customer 4"

然后我可以使用externaldata运算符在这样的查询中从日志分析/应用程序洞察中引用这些数据:

let customers = externaldata(id:string, companyName:string)  [
    h@"https://xxx.blob.core.windows.net/myblob.txt?sv=2019-10-10&st=2020-09-29T11%3A39%3A22Z&se=2050-09-30T11%3A39%3A00Z&sr=b&sp=r&sig=xxx"  
]  with(format="csv");
requests
| extend CompanyId = tostring(customDimensions.CustomerId)
| join kind=leftouter
(
    customers
)
on $left.CompanyId == $right.id

该 urlhttps://xxx.blob.core.windows.net/myblob.txt?sv=2019-10-10&st=2020-09-29T11%3A39%3A22Z&se=2050-09-30T11%3A39%3A00Z&sr=b&sp=r&sig=xxx是通过使用Microsoft Azure Storage Explorer创建一个包含 SAS 令牌的 url 来创建的,选择一个 blob,然后右键单击 -> 获取共享访问签名。在弹出窗口中创建一个 SAS,然后复制 uri。

于 2020-10-13T12:53:09.597 回答
0

我知道 Log Analytics 在后端使用 Azure 数据资源管理器,Azure 数据资源管理器具有在查询中使用外部表的功能,但我不确定 Log Analytics 是否支持外部表。

Azure 数据资源管理器中的外部表 https://docs.microsoft.com/en-us/azure/data-explorer/kusto/query/schema-entities/externaltables#:~:text=An%20external%20table%20is%20a ,和%20托管%20在%20%20集群之外

于 2020-08-22T15:29:30.020 回答