如何简单创建日志文件

如何简单创建日志文件,第1张

您可以创建日志文件,并使其包含与互 *** 作性、程序加载和网络有关的诊断信息。通过设置注册表项,可以启用日志拆拦记录。首先,设置一个注册表项以启用常规日志记录,然后针对所需的日志记录组件和选项来设置注册表项。

可以使用下列方法设置注册表项:

使用 Visual Studio 中的远程注册表编辑器。

在 .NET Compact Framework 2.0 Service Pack 1 中,使用远程性能监视器中的日志记录选项。有关远程性能监视器的更多信息,请参见 如何:在运行时监视性能。

在 .NET Compact Framework 3.5 中,可以使用日志记录工具 NetCFLogging.exe,该工具提供了用于启用和禁用日志记录的简单的图形用户界面。此工具包括在 Power Toys for .NET Compact Framework 中。有关更多猛悉信息,请参见 Power Toys for .NET Compact Framework。

使用 Registry 和 RegistryKey 类,.NET Compact Framework 2.0 版及更高版本支持这些类。

下表对这些日志文件进行了总结。

日志记录组件

日志文件内容

互 *** 作

记录 COM 互 *** 作调用。提供有关平台调用和封送处理的信息。

错误

记录所有未处理的异常和本机异常。将错误记录到日志文件和 OutputDebugString 中。将为位于当前路径的每个程序集创建日志文件,并将其应用于当前会话。在第一次出现未处理的异常或本机异常之后,将覆盖日志文件。

加载程序

记录有关程序加载的信息。文件标头包含下列信息:

应用程序名称。

进程 ID(由 Windows Embedded CE 提供)。

创建日志文件的本地日期和时间。其格式不是全局性的,而是区域性特定的。

.NET Compact Framework 版本,例如 2.0.5021.00。

与平台相关的信息,例如 Windows Embedded CE v5.0.1400 (CEPC) WinCE5x86 debug Dev i386 IJITv2。

文件提供以下信息:

强制状态(兼容性模式)。

加载模块时为模块指定的信任级别。

解析方法时失败。

解析类型时失败。

查找或加载程序集或模块时失败。

程序集加载成功。

无效的元数据版本。

查找平台调用 DLL 时失败。

在平台调用 DLL 中查找函数时失败。

策略文件的名称,或者指出缺少该文件的事实。

策略文件处理过程中的主要错误。

托管程序集基于策略的重定向。

此外,还可以包括有关全局程序集缓存的信息。

网络

记录网络流量。网络日志文件是二进制文件,如果没有 .NET Compact Framework 日志查看器 Logviewer.exe,则无法访问该文件。在 .NET Compact Framework 3.5 及更高版本中,该日志查看器包含在 Power Toys for .NET Compact Framework 中。有关更多信息,请参见 Power Toys for .NET Compact Framework。

由于网络日志记录发生在 Windows 套接字层,因此日志文件只包含网络数据包信息。这包括通过网络发送的数据,其中有些可能是敏感数据,因而需要进行加密。

终结器

记录在垃圾回收器丢弃对象之前未释放这些对象的类名。.NET Compact Framework 3.5 及更高版本支持此日志。

对象名不包含在日志中,原因是这些名称对于公共语言运行时 (CLR) 不可用。但是,未释放的对象的类名有助于识别这些对象。未释放的对象在应用程序中可能造成性能问题。

说明:

某些情况下,调用终结器的是 .NET Compact Framework 而不是应用程序代码。

此文件包含以下信息:

指示终结器何时旅知胡对对象运行垃圾回收器的时间戳。

被终结对象的类。

跟踪

记录 Windows Communication Foundation (WCF) 的代码异常。桌面 .NET Framework 支持三种日志记录:跟踪、消息处理和事件日志记录。.NET Compact Framework 上的 WCF 只支持通过跟踪日志记录来跟踪代码异常,但它不记录警告和错误消息。

.NET Compact Framework 3.5 及更高版本支持此日志。

默认情况下,系统会将日志文件写入包含被诊断的应用程序的目录。但是,您可以使用注册表项指定路径和其他选项,如下所示:

使用其他路径写入日志文件。这需要安全注册表的访问权限。

在日志文件名中包含应用程序名称。

在日志文件名中包含进程 ID。

日志文件名由以下几部分组成,其中组件 可以是“互 *** 作”、“错误”、“加载程序”或“网络”、“终结器”或“跟踪”:

netcf_应用程序名称_组件_进程 ID.log

应用程序名称和进程 ID 为可选项,它们基于注册表设置。

例如,对于名为 MyApp.exe 的应用程序,其加载程序日志文件可命名如下:

netcf_MyApp_Loader_2066923010.log

有关如何检查互 *** 作日志文件和加载程序日志文件等日志文件的信息,请参见 日志文件信息。

启用日志记录

将以下 Enabled 项的值设置为 1:

HKLM\Software\Microsoft\.NETCompactFramework\Diagnostics\Logging\Enabled

必须设置此项值才能启用六种日志记录:互 *** 作、加载程序、错误、网络、终结器和跟踪。请注意,默认情况下,Logging 下的子项并不存在。

可以通过将此值设置为 0(零)来关闭所有日志记录。

指定日志文件路径(可选)

将以下 Path 项的值设置为表示日志文件位置的字符串:

HKLM\Security\.NETCompactFramework\Diagnostics\Logging\Path

此项只能通过可写入安全注册表的应用程序来访问。如果未指定路径,系统会将日志文件写入包含应用程序的目录。

在名称中包含应用程序(可选)

将以下 UseApp 项的值设置为 1:

HKLM\Software\Microsoft\.NETCompactFramework\Diagnostics\Logging\UseApp

如果要运行多个应用程序并为每个应用程序获取单独的日志文件,则可以使用此项。如果有两个应用程序将日志文件写入同一目录,则当第二个应用程序运行时,较早的日志文件始终会被较新的日志文件覆盖。UseApp 项可以用作日志文件的区分符。

在名称中包含进程 ID(可选)

将以下 UsePid 项的值设置为 1:

HKLM\Software\Microsoft\.NETCompactFramework\Diagnostics\Logging\UsePid

如果要多次运行同一个应用程序并为每个实例创建单独的日志,则可以使用此项。此设置会在日志文件名中添加进程 ID,以使应用程序的每个实例都能用不同的名称创建新日志文件。

在事件发生时记录事件(可选)

将以下 Flush 项的值设置为 1:

HKLM\Software\Microsoft\.NETCompactFramework\Diagnostics\Logging\Flush

设置此值后,公共语言运行时 (CLR) 便会在事件发生时立即将日志事件写入日志文件,而不是先将事件保存在缓冲区中,并在写满缓冲区时才写入日志文件。此设置会给应用程序的性能带来负面影响,并可能稍稍修改应用程序的计时。但是,它有助于诊断与应用程序故障或其他错误有关的问题,因为您可能需要查看导致错误的最后几个事件。如果不存在或未设置此项,则系统将只有在写满缓冲区后,才会向日志文件写入数据。

有一用户反馈在开启Win7系统的时候,d出了一个 Win7系统 自动关机的提示,提示内容为“系统即将关机,请保存所有正在运行的工作,然后注销,未保存的改动将会丢失,自动关机是由NT AUTHORITY|SYSTEM 初始的”。键凯怎么办? 其实出现由NT AUTHORITY|SYSTEM 初始的提示是由于蠕虫病毒导致的LSASS.EXE 停止响应,现我给大家介绍解决方法!

解决步骤如下:

1、在win7系统中点击“开始——运行”,输入“cmd”命令后按回车,打开命令提示符窗口。

2、在打开命令提示符光标处,输入“shutdown.exe -a”命令后按回车键。(注意-a前面有一个空格);

3、减轻漏洞隐患,可通过创建日志文件来暂时消除令蠕虫病毒可通过其侵入计算机的漏洞。创建日志文件步骤如下:

1)同样的方法打开命令提示符窗口,在命令提示符光标处键入“ echo dcpromo >%systemroot%\debug\dcpromo.log ”命令后按回车键,将日志文销亮祥件设置为只读属性;

2)在命令提示符下键入“attrib +R %systemroot%\debug\dcpromo.log”命令后按回车键。

4、系统性能的改善技巧

如果计算机反应迟缓或者 Internet 连接速度很慢的话,则说明是蠕虫病毒已经在您的局域网连接内扩散,使你无法下载并安装所需的软件更新,此时需要改善系统性能,具体步骤如下:

1)按 CTRL+ALT+DELETE组合键,调出“任务管理器”;

2)以下可能列出的每个任务,单击并选中该任务,然后单击“结束任务”按钮,将其结束,然后就可以了。

任意以avserve 开头的任务(例如 avserve.exe)。

任意以avserve2 开头的任务(例如 avserve2.exe)。

任意以_up.exe 结尾的任务(例如 12345_up.exe)。

任意以skynetave 开头的任务(例如 skynetave.exe)。

hkey.exe

msiwin84.exe

wmiprvsw.exe

注意:切亏搏勿结束 wmiprvse.exe 任务这是一个合法的有用的系统任务。

通过以上对Win7自动关机祸首竟是蠕虫病毒的介绍,如果你也遇到了此问题的话,便可按照以上的方法进行解决了。 


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8232844.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存