【问题标题】:Can Application Insights be used off-lineApplication Insights 可以离线使用吗
【发布时间】:2018-12-11 09:49:20
【问题描述】:

我维护了许多向 Application Insights 报告事件、错误等的应用程序。

我还有一些应用程序在不开放互联网的公司环境中运行。

是否可以在本地存储遥测数据,然后将其批量上传到应用洞察?

这当然不是实时信息,但它允许我重复使用已有的报告和工具。

查看了persistence channel,但它似乎是针对同一应用程序创建并最终发送信息的临时离线场景。

在我的场景中,所有遥测数据都将存储在一个文件中,该文件稍后会移动到具有 Internet 访问权限的机器上,另一个应用程序会上传信息。

【问题讨论】:

  • @PeterBons,非常有价值的信息并证实了我的怀疑(我首先提出这个问题的原因)。将其添加为答案(例如“不,没有重大限制是不可能的”),我会接受它。谢谢。
  • 不客气。我已经把它作为答案。

标签: azure azure-application-insights offline


【解决方案1】:

并非没有一些主要缺点,让我解释一下:

首先,Application Insights 仅允许您添加不超过 48 小时的遥测数据。 (见this question第一条评论

其次,在向应用程序洞察发送异常遥测数据时,您会遇到麻烦。您将不得不以某种方式将异常序列化到磁盘或其他东西,然后,当上传过程开始时,您将不得不反序列化该异常数据。这些通常很难反序列化,因此您会丢失一些信息,例如实际异常类型。

【讨论】:

    【解决方案2】:

    是的,应该可以。几个选项:

    1. 实现TelemetryProcessor,它将所有内容保存在某处,然后返回 false(因此,它不会被链的其余部分处理 => 不会被发送)
    2. 实现自己的遥测通道并替换持久性通道

    除此之外,您还需要实现上传器,该上传器从您存储遥测数据的位置读取遥测数据,然后使用一些 SDK 上传。

    更多详情请创建github问题并寻求指导=)

    【讨论】:

    • 好的,谢谢。我将看看 Persistance 通道如何进行 ITelemetery 序列化/反序列化并从那里开始工作。
    猜你喜欢
    • 2010-10-24
    • 1970-01-01
    • 1970-01-01
    • 2023-01-18
    • 1970-01-01
    • 2017-06-13
    • 2022-10-24
    • 2016-06-06
    • 2019-07-26
    相关资源
    最近更新 更多