标签: event-log

通过托管代码 (.NET)/命令行启用 Windows 事件日志

如果默认情况下禁用事件日志,是否有一种编程方式允许我启用它?简而言之,我只需要知道是否可以启用特定的事件日志,以便我可以以编程方式使用事件。

谢谢

.net c# event-log

3
推荐指数
1
解决办法
2333
查看次数

使用pywin32(win32evtlog模块)在Python中读取Windows事件日志

我想阅读Windows的事件日志.我不确定这是不是最好的方法,但我想使用pywin32 - > win32evtlog模块来做到这一点.首先,可以使用此库从Windows 7读取日志,如果是这样,如何读取与应用程序运行相关的事件(运行.exe必须在Windows中的事件日志中留下痕迹我猜).

我已经设法在网上找到一些小例子,但这对我来说还不够,遗憾的是文档写得不好; /

import win32evtlog

hand = win32evtlog.OpenEventLog(None,"Microsoft-Windows-TaskScheduler/Operational")
print win32evtlog.GetNumberOfEventLogRecords(hand)
Run Code Online (Sandbox Code Playgroud)

python winapi pywin32 event-log python-2.7

3
推荐指数
1
解决办法
7391
查看次数

EventLog 源的更改日志

我们公司刚刚更名,我正在重新命名一些软件的品牌。我遇到的一个问题是我们将事件日志写入为Company Name.ProductName. 有没有一种方法可以更改源的日志,而无需删除并重新创建源。

我已经能够确定与源相关的日志,但不确定如何更改日志而不删除除更改产品名称之外的现有数据,而我不想这样做。

        if (!System.Diagnostics.EventLog.SourceExists("ProductName"))
        {
            System.Diagnostics.EventLog.CreateEventSource(
                "ProductName", "Company Name");
        }
        else if (!EventLog.LogNameFromSourceName("ProductName", ".").Equals("Company Name"))
        {
            // ??? Not sure what to do here ???
        }
        eventLog.Source = "ProductName";
        eventLog.Log = "Company Name";
        eventLog.WriteEntry("The Service has been created.");
Run Code Online (Sandbox Code Playgroud)

c# event-log

3
推荐指数
1
解决办法
1669
查看次数

变量中具有多个 ID 的 Get-WinEvent -FilterHashTable 不起作用

这对我来说工作:

Get-WinEvent -FilterHashTable @{Logname = "ForwardedEvents" ; ID = 4625,4740}
Run Code Online (Sandbox Code Playgroud)

(……我期望的结果……)

这有效:

$EventId = "4625"

Get-WinEvent -FilterHashTable @{Logname = "ForwardedEvents" ; ID = $EventId}
Run Code Online (Sandbox Code Playgroud)

这不起作用:

$EventId = "4625,4740"

Get-WinEvent -FilterHashTable @{Logname = "ForwardedEvents" ; ID = $EventId}
Run Code Online (Sandbox Code Playgroud)

错误...

  Get-WinEvent : No events were found that match the specified selection criteria.
At line:1 char:13
+ Get-WinEvent <<<<  -FilterHashTable @{Logname = "ForwardedEvents" ; ID = $EventIds}
+ CategoryInfo          : ObjectNotFound: (:) [Get-WinEvent], Exception
+ FullyQualifiedErrorId : NoMatchingEventsFound,Microsoft.PowerShell.Commands.GetWinEventCommand
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

powershell event-log

3
推荐指数
1
解决办法
2万
查看次数

设置应用程序事件日志的权限

有没有办法在Windows事件日志上设置权限,在本例中为Application,类似于您可以对目录和文件执行的操作?

permissions event-log

2
推荐指数
1
解决办法
4537
查看次数

.NET CreateEventSource问题

我使用的是Windows Server 2003 x64 + VSTS 2008 + .Net 3.5 + C#,API EventLog.CreateEventSource有两个参数,source和logName.

我有两个问题,

  1. 如何从PowerShell调用函数EventLog.CreateEventSource?
  2. 参数source和logName的含义是什么?它们的值如何反映在Windows事件查看器中?

乔治,提前谢谢

.net c# powershell event-log visual-studio-2008

2
推荐指数
1
解决办法
2183
查看次数

ASP.NET应用程序访问Windows Server 2008 R2上的事件日志

谁能解释为什么会发生以下情况:

我的ASP.NET应用程序需要访问Application事件日志.

  1. 当我最初访问Web应用程序时,它返回"安全"异常(这是预期的,因为我还没有授予写入应用程序事件日志的权限).

  2. 然后,我在以下注册表项上为IIS_IUSRS组授予读/写权限:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog.作为此操作的结果,我的Web应用程序开始工作.

  3. 现在我删除了我授予IIS_IUSRS组的权限.但我的Web应用程序仍在继续工作(虽然我希望再次提出"安全"异常)

那么,虽然删除了写入应用程序日志的权限,但为什么Web应用程序仍在继续工作?

asp.net registry event-log windows-server-2008-r2 windows-server

2
推荐指数
1
解决办法
6929
查看次数

.NET Framework文件夹中不同EventLogMessages.dll之间的区别

有两个EventLogMessages.dll文件,

  1. C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ EventLogMessages.dll

  2. C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ EventLogMessages.dll

这些文件不是.NET文件(无法使用ILDasm进行反汇编)。这两个文件有什么区别?

我为VS2010使用了文件的2.0版本。这样安全吗?

如果没有,为什么我应该使用4.0版本呢?

-大特

logging visual-studio-2010 event-log

2
推荐指数
1
解决办法
2041
查看次数

从路径读取事件日志文件

我的问题与此问题非常相似如何以编程方式打开事件日志? 除了我记录任何东西.我需要从多个未连接的计算机创建日志条目的数据库.我得到.evtx文件,然后我尝试处理它们.现在我正在从导出的xml文件中执行此操作.但我想跳过xml转换部分.我已经阅读了https://msdn.microsoft.com/en-us/library/System.Diagnostics.EventLog.aspx文章,但我找不到我想要的东西.有没有办法在不转换为xml的情况下做我想做的事情?

c# windows logging event-log

2
推荐指数
1
解决办法
5736
查看次数

在Windows中访问和查询事件日志

我想知道如何才能达到事件日志条目.我有一个客户端服务器应用程序,它执行没有问题.我正在寻找的是id为1149的所有日志实例.这个日志是远程连接条目.我已经拿了一段代码,就在这里.

string logType = "System";
string str = "";
EventLog ev = new EventLog(logType, System.Environment.MachineName);
int LastLogToShow = ev.Entries.Count;
if (LastLogToShow <= 0)
    Console.WriteLine("No Event Logs in the Log :" + logType);

// Read the last 2 records in the specified log. 
int i;
for (i = ev.Entries.Count; i >= LastLogToShow - 1000 ; i--)
{
    EventLogEntry CurrentEntry = ev.Entries[i];
    if (CurrentEntry.InstanceId == 1149)
    {
        str += "Event type: " + CurrentEntry.EntryType.ToString() + "\n" +
               "Event Message: " + CurrentEntry.Message …
Run Code Online (Sandbox Code Playgroud)

c# arrays event-log

2
推荐指数
1
解决办法
523
查看次数