【问题标题】:How can I stream a log file to a web page using ASP WebForms如何使用 ASP WebForms 将日志文件流式传输到网页
【发布时间】:2018-04-26 11:23:40
【问题描述】:

我想使用 ASP 网页来监控实时日志文件 - 我找到了使用其他技术的解决方案,例如 frontail,但没有使用 ASP。

我认为我需要发出信号以进行实时通信,现在我花了几个小时寻找想法和解决方案,但没有任何运气。我的所有搜索都返回有关 ASP 和信号器日志本身的信息。

如何使用 ASP 网络表单监控一个或多个日志文件并将其流式传输到网页?

【问题讨论】:

  • signalR 有什么问题?
  • 没什么问题,我只是不确定如何使用它来监控实时日志,并正在寻找有关如何执行此操作的建议...
  • 你试过什么?请分享一些代码,我将帮助添加 SignalR
  • 我有一些代码不工作,但当我意识到 Chrome 在 websockets 和 windows auth 方面存在问题时,我得到了它。我尝试使用hangfire 处理后台任务,无限循环读取我的文件并通过信号器发送新行。但是hangfire任务是持久的,当有人关闭页面时我找不到取消它们的方法。有什么想法可以让我在每次页面加载时运行一个无限循环来检查日志文件的变化吗?
  • 您只谈论技术而不共享任何代码。在这种情况下我帮不了你。

标签: c# asp.net logging webforms


【解决方案1】:

您可以考虑 UpdatePanel / Timer 轮询方法。

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"> 
    <Triggers>
        <asp:AsyncPostBackTrigger  ControlID="Timer1" EventName="Tick" />
    </Triggers>
    <ContentTemplate> 

    Your repeater, datalist, listview, or other databound control here.

    </ContentTemplate> 
</asp:UpdatePanel> 

<asp:Timer ID="Timer1" runat="server" Interval="5000" OnTick="Timer1_Tick">
</asp:Timer> 

Timer1_Tick 是应该重新绑定数据绑定控件的服务器端方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-01
    • 2020-02-13
    • 2020-01-23
    • 1970-01-01
    • 2020-07-24
    • 2013-05-17
    • 2018-08-06
    相关资源
    最近更新 更多