ASP.NET 2.0 中 Web 事件

Uncaught (in promise) RequestErrorEvent {statusCode: 404, response: ArrayBuffer(168), responseHeader 来搭建的框架,然后在里面加载了OSGB转的3dtiles,转化工具为OSGBLab。但是加载的这个3dtiles无论如何都不显示,当地图移动时就报错,报错截图如下:cesium加载3dtiles瓦片出现得报错。所有的报错中 存在唯一的报错 就是请求draco_decoder.wasm失败。1.89版本之后 存在这个问题 所以得手动添加一些文件。但是后台给我的返回的b3dm的请求都是200状态。所以从解决draco_decoder.wasm下手。 阅读详情

ASP.NET 2.0 中 Web 事件


ASP.NET 2.0 还提供了全功能的应用程序监视和健康监视。这个系统是由一个完全可扩展事件模型和一个能将事件发送到多种接收器的事件引擎组成的。举例来说,您可以配置您的 ASP.NET 应用程序来每天发送电子邮件,表明服务器正在运行并且包括可用内存的数量。同样,您可以创建一个链接到未处理异常的健康事件。异常内容、请求标题以及时间和日期都可以被发送到一个错误日志记录数据库。

ASP.NET 2.0 包含了内置的事件,包括心跳、应用程序生存期事件(启动/停止/编译)和错误陷阱事件(未处理异常)。不过,,您可以很容易地在这些基类之上进行构建,以从应用程序重创建并引发您自己的事件。举例来说,您可能创建一个自定义的事件来记录何时第一百个用户单击某一特定的链接。

ASP.NET 2.0 健康监视系统真正强大的功能是,通过 web.config 和 machine.config 文件它是完全可配置的。使用正常的 XML,您能定义事件、定义提供程序(事件接收器),以及将特定的事件发送到特定的提供程序。

创建事件

事件在结构上与异常是类似的。也就是说,除了作为一个消息容器,event 类本身几乎没有功能。在健康监视方面,所有事件都从 Sytstem.Web.Management.WebBaseEvent 继承。不过,您也可以从用于专用目的(如收集 HTTP 请求数据或处理异常)的高级基类派生。

列表 4. 自定义事件

using System;
using System.Web.Management;

public class CustomEvent : WebBaseEvent
{
  public const int EventCode = WebEventCodes.WebExtendedBase + 10;
  public MyEvent(string message, object eventSource) 
                : base(message, eventSource, EventCode)
  { }
}

创建自定义事件的最重要部分是提供一个唯一的 EventCode。所有内置事件代码都在 WebEventCodes 枚举中。自定义事件应该有从 WebEventCodes.WebExtendedBase + 1 开始的数字。除此之外创建自定义事件中的唯一常见任务是正确地初始化事件。

使用事件

虽然内置事件自动激发,但您还是可以将代码添加到应用程序以在任何时候启动自定义事件。

列表 5. 引发一个事件

<script runat="server"> 
   void Page_Load(Object sender, EventArgs e) 
   { // Raise a custom event MyEvent myEvent = 
          new MyEvent("loading webevent sample page", this); myEvent.Raise(); } 
</script> 

当您从 ASP.NET 页面引发一个事件时,您只是创建该事件的一个新实例然后执行 Raise() 方法。Raise() 方法将事件实例自动传递到健康监视引擎。然后此引擎将该事件映射到配置文件和提供程序,并将该事件移交给正确的提供程序。提供程序最终将事件传递到正确的接收器。

配置健康监视

健康监视是在 machine.Config 或 Web.Config 文件中的新的 区域配置的。您可以配置 部分来设置一个周期性报告应用程序状态的 Web 检测信号。您也可以配置应用程序来生成事件,并将该事件通过各种提供程序传递。

配置事件

必须在事件映射区域标识每个事件。事件通过唯一名称和完整类型被标识。事件名称在规则区域是作为链接来使用的。

列表 6. 事件映射区域

<!-- Event mappings define the events that are monitored --> 
<eventMappings> 
     <add name="SampleWebRequests" 
          type="Samples.AspNet.SampleWebRequestEvent, SampleWebRequestEvent,
                Version=0.0.0.0, Culture=neutral, PublicKeyToken=f0c63b9a560d5e5a"/> 
</eventMappings> 

ASP.NET 2.0 附带几个内置事件,配置为下列名称:

•

所有事件。所有事件名称捕获任何 WebBaseEvent。这个事件类别是对被健康监视系统捕获的每个事件的一个广泛的 catch-all。

•

检测信号。检测信号事件使用 WebHeartBeatEvent 提供关于 Web 应用程序状态的定期通知。

•

应用程序生存期事件。应用程序生存期事件包括启动和停止应用程序,以及重新编译应用程序的部分或全部。这些事件是基于 WebApplicationLifetimeEvent 的,并且在 lifetime 事件发生时,报告日期、时间和当前的状态。

•

所有错误。所有错误类别收集系统检测到的任何异常或错误。这些事件是基于 WebBaseErrorEvent 的。

•

基础结构错误。使用 WebErrorEvent 捕获与 ASP.NET 运行库或 IIS 相关的错误。这些事件是所有错误类别的子类,并且主要与系统管理员而不是应用程序开发者相关。

•

请求处理错误。在请求期间发生的任何错误或异常都会触发一个 WebRequestErrorEvent。这个事件记录了进入的请求以及与处理该请求相关联的错误。请求处理错误也是所有错误类别的一个子集。

•

所有审核。可使用健康监视系统通过 WebAuditEvent 提供审核尝试。这个事件自动记录 Web 应用程序中活动用户的操作。如果您正在使用模拟,审核事件将帮助您对谁在使用您的应用程序,以及他们是如何在使用保持跟踪。

•

失败审核。WebFailureAuditEvent 是一个特殊的审核事件类型,当一个用户试图使用无效的用户名或密码登录您的 Web 站点时,它就会被触发。当一个对于指定资源用户是无法验证的时候,此事件也会发生。

•

成功审核。WebSuccessAuditEvent 是失败事件的对应,只要用户已验证或执行一些其他需要审核记录的操作就会发生。

自定义事件是易于创建的,尽管您必须向您的应用程序添加代码来引发事件。

配置提供程序

每个提供程序都必须在配置文件中注册。注册一个提供程序需要应用程序的唯一名称和类型。这个类型包含了实际 provider 类的完整强名称 (strong name)。提供程序的名称被用作规则区域中的一个链接。

列表 7. 提供程序

<healthMonitoring Enabled="true" heartBeatInterval="0"> 
 <!-- Providers link health events to various targets such as WMI or SMTP email --> 
   <providers> 
      <add name="WmiEventProvider" type="System.Web.Management.WebWmiEventProvider,
          System.Web,Version=1.2.3400.0,Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/> 
  </providers> 

ASP.NET 2.0 附带有 WMI、Windows 事件监视器、SMTP 电子邮件和 SQL Server 数据库的提供程序。通过扩展正确的基类,可以创建自定义提供程序来连接到其他事件接收器。

 

将事件映射到提供程序

配置健康监视的最后一步是,用规则将事件连接到提供程序。规则提供了在好的事件名称、事件类、提供程序和事件配置文件或者类别之间的一个链接。您也可以使用规则来定义启动特定的事件的一个最短时间间隔。

列表 8. 规则

<!-- Rules link events to providers and profiles, and define intervals for event checking --> 
<rules> 
    <add name="Custom Database Events" eventName="CustomDBEvents" 
         provider="WmiEventProvider" profile="Database" minInterval="00:01:00" /> 
    <add name="Standard Web Requests" eventName="All Events" 
         provider="SqlEventProvider" profile="Default" minInterval="00:01:00" /> </rules> 
</healthMonitoring> 
 

规则执行由不同属性配置的若干不同任务:

•

name。规则名称是友好名称,它会在事件被发送到接收器时出现。

•

eventName。eventName 映射到一个在 区域中配置的事件。

•

provider。提供程序是一个到在 区域中配置的提供程序的链接。任何匹配这个规则的事件将通过这个提供程序传递给由该提供程序支持的目标。举例来说,System.Web.Management.SqlWebEventProvider 会自动将事件写入到 SQL Server 数据库。

•

profile。不同的提供程序将配置文件属性作为显示事件的过滤器来使用。举例来说,电子邮件提供程序可能立即为任何带有“紧急”配置文件的事件发送一个消息,但是也可能只发送带有该日“例行”配置文件事件的汇编的日常电子邮件。

•

minInterval。一些事件,如检测信号,必须在最短的时间间隔内激发。您可以使用这个属性来设置最小事件时间间隔。

通过这个配置区域,您可以设置各种健康相关事件,并将事件映射到各种提供程序。举例来说,您可能设置一个检测信号,每 10 分钟发送一个 WMI 事件。同样,您可以为任何未捕获的异常设置一个电子邮件警报。

相关文章:
http://support.microsoft.com/default.aspx?scid=kb%3Bzh-cn%3B893664

http://blog.youkuaiyun.com/dshpsky/archive/2006/06/18/810893.aspx 

后仿真中《SDF反标必懂连载篇》之 探究 SDF延迟精度 与 timescale 精度问题 本篇文章,同样属于后仿真中的SDF反标系列文章内容之一。今天,将前仿真中的timescale 和 后仿真中 timescale+sdf 延迟数据,进行贯通讲解。不要忽视这部分内容,因为后仿真的成功准确与否,时间精度问题,很重要。为什么?接下来一一讲解。 阅读详情

相关推荐

Neo4j桌面版导入CVS文件

我们的relation.csv是这样的。

m0_53573725的博客 817

windows日志和审核

windows事件日志简介 Windows事件日志记录着 Windows系统中发生的各类事件。通过事件日志,可以监控用户对系统的使用情况,掌握计算机在特定时间发生了什么事件,此外也可以了解用户的各种操作行为。因此,它可以为调查提供很多关键信息。 Windows事件日志文件本质上是数据库,其中包括有关系统、安全、应用程序的记录。记录的事件包含9个元素:日期/时间、事件级别、用户、计算机、事件1D...

7Riven's blog 1万+

STM32实战:5分钟搞定CanFestival协议栈下的CANopen心跳报文配置(附避坑指南)

本文详细介绍了如何在STM32平台上使用CanFestival协议栈快速配置CANopen心跳报文,包括硬件准备、协议栈移植、心跳报文配置及常见问题解决方案。通过实战步骤和避坑指南,帮助开发者高效实现节点状态监控,提升工业控制系统的可靠性。

win55的博客 745

解决requests库中的期限处理问题:从404到异常再到修复

在使用requests库进行网络请求时,用户可能会遇到一个奇怪的问题:当没有指定请求的期限时,他们得到的响应是404错误,但是一旦指定了请求的期限,就立刻遇到了一个异常,声称远程主机强制关闭了连接。这个问题让用户感到困惑,因为他们不明白为什么期限设置会导致这种异常行为。

weixin_44617651的博客 347

逻辑漏洞:水平越权、垂直越权靶场练习

水平越权和垂直越权是组织中常见的管理问题,指的是员工在组织中所拥有的权力和责任超出其职位所应具备的范围。 水平越权是指员工在同一级别的职位上超越了其同事的权力和责任范围,通常表现为某个员工在团队中承担了过多的任务或权力,导致其他同事感到不公平或不满。 垂直越权则是指员工在组织中超越了其职位等级的权力和责任范围,通常表现为员工在没有得到上级批准的情况下做出决策或行动,可能会导致组织内部的混乱和冲突。

qq_68163788的博客 2470

Origin2018(汉化版)在使用科学计数法的时候如何将坐标刻度的0.0改成0

文章目录1 问题2 解决方法 1 问题 先看下面这张图,当我使用科学计数法时,纵坐标出现了0.0的字样,这样看起来很不美观。有些期刊还会有要求,不能出现0.0的格式。 图1 那么该怎么将它改成0呢?首先让我们尝试着用Origin自带的属性,看看能不能设置。 2 解决方法 解决方法一: step1: 双击坐标轴,打开坐标轴属性设置。 step2: 在刻度线标签选项中设置左轴的显示 图2 会发现,按照图2的方式改好之后,其它的小数位也全没了,如果但是有些数字就被覆盖了,这显然不是我

qq_40077565的博客 2万+

项目开发经验-ASP.NET项目开发中的异常处理(转)

参与并负责了一个B/S项目,项目的中异常处理做的比较糟糕。后期想进行重构,无奈自己本身不是做web开发的,在网上找资料,找到一篇,感觉写的不错,特转载。   前言:异常的处理在项目开发中是很有必要的,异常的处理不仅仅只是try..catch..finally就完事了的。异常处理绝对可以称开发中的重要组成部分。必须正确的面对异常,因为即使是最能干的开发人员,也要面对这个问题 ....    我们不...

weixin_33834075的博客 200

【深度学习-番外1】Win10系统搭建VSCode+Anaconda+Pytorch+CUDA深度学习环境和框架全过程

本文将介绍在Windows 10系统下搭建深度学习环境的完整过程,包括安装Anaconda、CUDA、NVIDIA显卡驱动以及Pytorch框架。后续本专栏的Python语言下的深度学习环境都以本篇搭建的为准。

fengzhuqiaoqiu的博客 4000

ASP.NET2.0中Web事件

<!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"

zgqtxwd的专栏 336

3D识别建模 — 基于ReconstructMe和EAGLE EYES SCANNER的实现

3D实体识别建模,作为3D打印反向工程的一个重要环节,今天就让我们利用ReconstructMe和EAGLE EYES SCANNER来了解一下。 第一步、软件和硬件准备就绪 ReconstructMe下载并安装 http://reconstructme.net/?wpdmdl=160 EAGLE EYES SCANNER直接将相应USB插入电脑接口即OK,之后在    中点击搜索“设备管理...

qq_40013290的博客 881

RK3576 调试ov2735 mipi-csi摄像头

摘要:本文记录了基于RK3576平台调试OV2735 MIPI摄像头的全过程。开发环境采用Linux 6.1内核和Buildroot文件系统。调试步骤包括:1)硬件检查(电源、晶振和引脚连接);2)驱动配置(设备树节点、ISP通道设置);3)驱动验证(通过ID检测和I2C工具测试);4)推流测试(使用v4l2和gstreamer工具)。重点解决了复位引脚配置、时钟命名匹配等关键问题,并通过寄存器检查确保初始化正常。最终实现了摄像头数据流的成功输出,为嵌入式视觉应用开发提供了完整参考方案。

qq_45147279的博客 1060

ASP.NET 2.0中的Web和HTML服务器控件

ASP.NET 2.0中的Web和HTML服务器控件<!--google_ad_client = "pub-0674854344666573";//250x250, 创建于 08-1-11google_ad_slot = "7793161541";google_ad_width = 250;google_ad_height = 250;//-->  

软件开发 478

【华为OD技术面试手撕真题】3、小行星碰撞 | 手撕真题+思路参考+代码解析(C & C++ & Java & Python & JS)

小行星碰撞,本专栏更新每年华为OD机试的高频手撕代码题,每个题目都会使用五种语言进行解答(C & C++& Java & Python & JS),思路分析都非常详细, 实现最低的时间复杂度和高通过率,每个解题思路超过百字,内含各个编程语言的八股文面试题,欢迎大家订阅学习, 代码可以直接运行使用,全网限时最低价,持续更新

KJ.JK 8170

ASP.NET 2.0中的Web和HTML服务器控件

除了代码和标记之外,ASP.NET 2.0页面还可以包含服务器控件,它们是可编程的服务器端对象,典型情况下表现为页面中的UI元素(例如文本框或图像)。服务器控件参与页面的执行过程,并给客户端生成自已的标记呈现内容。服务器控件的优势在于,它让开发者从简单的积木式的组件中获取复杂的呈现方式和操作行为,极大地减少了生成动态Web页面所需要编写的代码量;另外一个优势是,定制它们的呈现方式和行为非常简单。服

u011877729的专栏 431

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Asp.Net2.0技巧(续)

偶尔看到这篇文章,觉得其中有些技巧挺好的,和大家分享一下 1.   在开发web控件时,如果控件必须放在服务器端的form内,可以通过Page.VerifyRenderingInServerForm(Control) 方法来保证。  2.  使用Control类的ResolveClientUrl(string)方法可以将类似“~/abc/ab.aspx”这样的路径转换为正确的url

jack20080808的专栏 426

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

用VS2005实现ASP.NET2.0移动开发

<br />即将到来的3G技术,将使得移动设备突破现在的带宽限制,这样我们就可以构建出许多新颖且功能强大的移动应用。现在已经有许多商业应用都开始向移动设备上进行迁移,所以对开发者来说,现在就开始移动开发的学习将是一种非常适合的时机。 <br />  在本文中我将介绍如何使用Visual Studio 2005创建一个ASP.NET 2.0移动程序,然后介绍一些常用的移动开发控件并以适合的方式在程序中加于应用,最后将谈谈如何开发针对特定移动设备的WEB程序和管理程序中的ViewState(视图状态)和Sess

小铭的命名空间 416

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

磁链:电机控制的核心状态量与实时观测方法

磁链是表征电机绕组中电磁能量耦合的关键状态量,本质为磁通与匝数的乘积,具有明确的拓扑性和方向性。其动态行为直接决定转矩生成与能量传递效率,是FOC、DTC、MPC等先进控制策略的共同物理基础。在工程实践中,磁链无法直测,需通过电压模型与电流模型融合估算,并依赖高精度电流/电压采样、在线参数辨识及龙伯格观测器等技术实现鲁棒实时观测。准确的磁链观测支撑了高性能驱动、能效优化乃至轴承故障预警等跨领域应用,已成为现代电机控制系统设计与调试的底层核心。

weixin_34417200的博客 423

asp.net 2.0中不同web控件之间的相互调用

在asp.net 2.0中,要在不同的web控件之间互相调用,必须要来引用,举例如下default.aspx:                              我们要实现的是,按下控件1的按钮后,将在控件2的文本框中显示出指定的文本在首页里,分别调用了控件1和控件2webcontrol.ascx: 这里放置一个按钮,然后用reference来引用控件2webcontrol.ascx.c

jackyrongvip的专栏 672

用vs2005实现asp.net2.0移动开发

出处:http://blog.csdn.net/jazzking746/archive/2007/01/20/1488853.aspx即将到来的3g技术,将使得移动设备突破现在的带宽限制,这样我们就可以构建出许多新颖且功能强大的移动应用。现在已经有许多商业应用都开始向移动设备上进行迁移,所以对开发者来说,现在就开始移动开发的学习将是一种非常适合的时机。    在本文中我将介绍如何使用visual

1968

ASP.NET 2.0中的健康监测系统(Health Monitoring)

ASP.NET 2.0中的健康监测系统(Health Monitoring)(2) - 通过Email发送监测信息原文发布日期:2007.03.21作者:Scott Mitchell翻译:webabcd介绍ASP.NET 2.0的健康监测系统是用来监测运营环境中ASP.NET程序的运行状况的。 它的工作就是记录事件信息到指定的日志源。 .NET 2.0框架中包含有多种可以被健康监测系统使用的内置事...

weixin_30386713的博客 215
上一篇: 未能找到带参数的非泛型方法
下一篇: Javascript 中的Hash表示
通者归来
博客等级 码龄25年 18粉丝 55原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值