C# Application Insights从自定义数据源清除数据

C# Application Insights从自定义数据源清除数据,c#,azure,azure-application-insights,telemetry,C#,Azure,Azure Application Insights,Telemetry,我通过Azure函数按计划将自定义数据加载到application insights应用程序中。工作流实质上是将一个json文件加载到azure存储帐户上,调用post到一个特定端点,其主体包含指向json文件的sas令牌链接,然后发生摄取循环,将json加载到自定义数据源中。我注意到的是,摄取周期将旧记录与新的JSON结合起来,我需要在触发新摄取之前清除数据,以便JSON文件始终表示数据集的完整状态 是否有任何API用于以编程方式清除应用程序自定义数据源中的数据 是的,可以清除Applicat

我通过Azure函数按计划将自定义数据加载到application insights应用程序中。工作流实质上是将一个json文件加载到azure存储帐户上,调用post到一个特定端点,其主体包含指向json文件的sas令牌链接,然后发生摄取循环,将json加载到自定义数据源中。我注意到的是,摄取周期将旧记录与新的JSON结合起来,我需要在触发新摄取之前清除数据,以便JSON文件始终表示数据集的完整状态

是否有任何API用于以编程方式清除应用程序自定义数据源中的数据

是的,可以清除Application Insights数据,但也可以 操作需要一段时间(例如2-3天)才能完成

这是通过向Azure管理API发送POST请求来实现的,如下所示:

---请求URL(POST)--

https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/purge?api-version=2015-05-01
{
  "table": "exceptions",
  "filters": [
    {
      "column": "timestamp",
      "operator": ">",
      "value": "2018-01-01"
    }
  ]
}
Authorization: Bearer {OAuth Access Token}
{
    "operationId": "purge-048ccace-a6a0-41b9-80e3-fbc11a5bdd64"
}
https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/operations/{purge-GUID (response returned in the purge POST request}?api-version=2015-05-01
Authorization: Bearer {OAuth Access Token}
{
    "status": "pending"
}
---请求正文---

https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/purge?api-version=2015-05-01
{
  "table": "exceptions",
  "filters": [
    {
      "column": "timestamp",
      "operator": ">",
      "value": "2018-01-01"
    }
  ]
}
Authorization: Bearer {OAuth Access Token}
{
    "operationId": "purge-048ccace-a6a0-41b9-80e3-fbc11a5bdd64"
}
https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/operations/{purge-GUID (response returned in the purge POST request}?api-version=2015-05-01
Authorization: Bearer {OAuth Access Token}
{
    "status": "pending"
}
exceptions是将根据筛选器删除数据的表的名称

---请求头---

https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/purge?api-version=2015-05-01
{
  "table": "exceptions",
  "filters": [
    {
      "column": "timestamp",
      "operator": ">",
      "value": "2018-01-01"
    }
  ]
}
Authorization: Bearer {OAuth Access Token}
{
    "operationId": "purge-048ccace-a6a0-41b9-80e3-fbc11a5bdd64"
}
https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/operations/{purge-GUID (response returned in the purge POST request}?api-version=2015-05-01
Authorization: Bearer {OAuth Access Token}
{
    "status": "pending"
}
导航到位于的Azure门户,打开云Shell并运行以下命令以获取OAuth访问令牌:

az account get-access-token
--响应---

https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/purge?api-version=2015-05-01
{
  "table": "exceptions",
  "filters": [
    {
      "column": "timestamp",
      "operator": ">",
      "value": "2018-01-01"
    }
  ]
}
Authorization: Bearer {OAuth Access Token}
{
    "operationId": "purge-048ccace-a6a0-41b9-80e3-fbc11a5bdd64"
}
https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/operations/{purge-GUID (response returned in the purge POST request}?api-version=2015-05-01
Authorization: Bearer {OAuth Access Token}
{
    "status": "pending"
}
---活动日志---

https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/purge?api-version=2015-05-01
{
  "table": "exceptions",
  "filters": [
    {
      "column": "timestamp",
      "operator": ">",
      "value": "2018-01-01"
    }
  ]
}
Authorization: Bearer {OAuth Access Token}
{
    "operationId": "purge-048ccace-a6a0-41b9-80e3-fbc11a5bdd64"
}
https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/operations/{purge-GUID (response returned in the purge POST request}?api-version=2015-05-01
Authorization: Bearer {OAuth Access Token}
{
    "status": "pending"
}
活动日志中将记录一个事件,其中包含有关操作的详细信息

---可用表格---

https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/purge?api-version=2015-05-01
{
  "table": "exceptions",
  "filters": [
    {
      "column": "timestamp",
      "operator": ">",
      "value": "2018-01-01"
    }
  ]
}
Authorization: Bearer {OAuth Access Token}
{
    "operationId": "purge-048ccace-a6a0-41b9-80e3-fbc11a5bdd64"
}
https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/operations/{purge-GUID (response returned in the purge POST request}?api-version=2015-05-01
Authorization: Bearer {OAuth Access Token}
{
    "status": "pending"
}
分析页面中提供了应用程序洞察其他数据源的可用表(包括其模式):


请注意,此过程是异步的,可能需要一段时间,可以通过以下GET请求查询其状态:

---请求URL(获取)--

https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/purge?api-version=2015-05-01
{
  "table": "exceptions",
  "filters": [
    {
      "column": "timestamp",
      "operator": ">",
      "value": "2018-01-01"
    }
  ]
}
Authorization: Bearer {OAuth Access Token}
{
    "operationId": "purge-048ccace-a6a0-41b9-80e3-fbc11a5bdd64"
}
https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/operations/{purge-GUID (response returned in the purge POST request}?api-version=2015-05-01
Authorization: Bearer {OAuth Access Token}
{
    "status": "pending"
}
---请求头---

https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/purge?api-version=2015-05-01
{
  "table": "exceptions",
  "filters": [
    {
      "column": "timestamp",
      "operator": ">",
      "value": "2018-01-01"
    }
  ]
}
Authorization: Bearer {OAuth Access Token}
{
    "operationId": "purge-048ccace-a6a0-41b9-80e3-fbc11a5bdd64"
}
https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/operations/{purge-GUID (response returned in the purge POST request}?api-version=2015-05-01
Authorization: Bearer {OAuth Access Token}
{
    "status": "pending"
}
--响应---

https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/purge?api-version=2015-05-01
{
  "table": "exceptions",
  "filters": [
    {
      "column": "timestamp",
      "operator": ">",
      "value": "2018-01-01"
    }
  ]
}
Authorization: Bearer {OAuth Access Token}
{
    "operationId": "purge-048ccace-a6a0-41b9-80e3-fbc11a5bdd64"
}
https://management.azure.com/subscriptions/{Subscription Id (GUID)}/resourceGroups/{Resource Group Name}/providers/Microsoft.Insights/components/{Application Insights Name}/operations/{purge-GUID (response returned in the purge POST request}?api-version=2015-05-01
Authorization: Bearer {OAuth Access Token}
{
    "status": "pending"
}

有关详细信息,请访问


下面是关于此功能的另一条有趣的线索