Skip to content

Commit 84d88bb

Browse files
committed
Added README and LICENSE.. Updated build.bat with my current configuration..
1 parent 7d381da commit 84d88bb

File tree

9 files changed

+135
-2
lines changed

9 files changed

+135
-2
lines changed
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
//------------------------------------------------------------------------------
2+
// <auto-generated>
3+
// This code was generated by a tool.
4+
// Runtime Version:2.0.50727.4952
5+
//
6+
// Changes to this file may cause incorrect behavior and will be lost if
7+
// the code is regenerated.
8+
// </auto-generated>
9+
//------------------------------------------------------------------------------
10+
11+
using System;
12+
13+
14+
15+
/// <summary>
16+
/// A strongly-typed resource class, for looking up localized strings, etc.
17+
/// </summary>
18+
// This class was auto-generated by the StronglyTypedResourceBuilder
19+
// class via a tool like ResGen or Visual Studio.
20+
// To add or remove a member, edit your .ResX file then rerun ResGen
21+
// with the /str option, or rebuild your VS project.
22+
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
23+
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24+
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25+
internal class Resources {
26+
27+
private static global::System.Resources.ResourceManager resourceMan;
28+
29+
private static global::System.Globalization.CultureInfo resourceCulture;
30+
31+
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
32+
internal Resources() {
33+
}
34+
35+
/// <summary>
36+
/// Returns the cached ResourceManager instance used by this class.
37+
/// </summary>
38+
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
39+
internal static global::System.Resources.ResourceManager ResourceManager {
40+
get {
41+
if (object.ReferenceEquals(resourceMan, null)) {
42+
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Resources", typeof(Resources).Assembly);
43+
resourceMan = temp;
44+
}
45+
return resourceMan;
46+
}
47+
}
48+
49+
/// <summary>
50+
/// Overrides the current thread's CurrentUICulture property for all
51+
/// resource lookups using this strongly typed resource class.
52+
/// </summary>
53+
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
54+
internal static global::System.Globalization.CultureInfo Culture {
55+
get {
56+
return resourceCulture;
57+
}
58+
set {
59+
resourceCulture = value;
60+
}
61+
}
62+
63+
/// <summary>
64+
/// Looks up a localized string similar to Available options:
65+
/// Pre-filters::
66+
/// Time: -after -before -at
67+
/// Type: -type :: Error|FailureAudit|Information|SuccessAudit|Warning
68+
/// Message: -startsWith -contains
69+
/// Computer: -computer
70+
/// Source: -source
71+
/// EventId: -eventId
72+
///
73+
/// Processing options:
74+
/// -tolerance :: Tolerance threshold for determining similarity of two Event log messages.
75+
/// Defaults to 0. i.e. Maximum accuracy =&gt; Least fuzzy =&gt; More groups
76+
///
77+
/// Output options:
78+
/// Fields in output reports: -include [rest of string was truncated]&quot;;.
79+
/// </summary>
80+
internal static string HelpText {
81+
get {
82+
return ResourceManager.GetString("HelpText", resourceCulture);
83+
}
84+
}
85+
}

EventLogAnalyzer.sln

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ Microsoft Visual Studio Solution File, Format Version 11.00
44
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{2300BCDB-659C-42FC-8539-EBC36B9FBFD4}"
55
ProjectSection(SolutionItems) = preProject
66
eventloganalyzer.build = eventloganalyzer.build
7+
LICENSE.txt = LICENSE.txt
8+
README.txt = README.txt
79
EndProjectSection
810
EndProject
911
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EventLog", "EventLog\EventLog.csproj", "{540AA583-6BC3-4894-9A9F-44438F3955E5}"

LICENSE.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Copyright (c) 2007 CodeMangler
2+
3+
This application is dual licensed.
4+
Non-profit and non-proprietary usages are subject to the GNU GPL License (http://www.gnu.org/licenses/gpl.html).
5+
Commercial and/or proprietary usage of the application and/or it's derived works must obtain a commercial license from the application's author.

Output/Analyzer.exe

36 KB
Binary file not shown.

Output/EventLog.netmodule

28 KB
Binary file not shown.

Output/Eventlog.exe

-52 KB
Binary file not shown.

Output/Resources.resources

866 Bytes
Binary file not shown.

README.txt

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
EventLog Analyzer
2+
=================
3+
4+
This is a utility I wrote a few years ago for automating analysis of Event Log files exported from production machines.
5+
The idea was to automate identifying and classifying similar Event Log records to get a quick overview of all the failure types and to focus on and fix the most frequent failure types.
6+
7+
It reads a bunch of Event Log files (*.evt) and automatically groups related Event Log records based on their similarity.
8+
Once the analysis is complete, it writes out a CSV each for every group of related events found, and a summary text with a bunch of statistics.
9+
You can provide it some filters that tell it to look at only the Event Log records that match a certain criteria.
10+
11+
Warning: It could be quite slow if you're processing a large number of Event Log records.
12+
13+
Hopefully, I'll get around to fixing the performance when I get some time (now that I've reopened the project after over 3 years :D).
14+
15+
### Commandline Options:
16+
Pre-filters::
17+
Time: -after -before -at
18+
Type: -type :: Error|FailureAudit|Information|SuccessAudit|Warning
19+
Message: -startsWith -contains
20+
Computer: -computer
21+
Source: -source
22+
EventId: -eventId
23+
24+
Processing options:
25+
-tolerance :: Tolerance threshold for determining similarity of two Event log messages.
26+
Defaults to 0. i.e. Maximum accuracy => Least fuzzy => More groups
27+
28+
Output options:
29+
Fields in output reports: -include (FieldNames|All) :: FieldNames:= Type|DateTime|Source|Category|EventId|User|Computer|Message
30+
Output Folder: -output :: Folder must exist
31+
32+
References
33+
----------
34+
* CodeProject article on parsing Event Log files: http://www.codeproject.com/KB/string/EventLogParser.aspx, by [J a a n s](http://www.codeproject.com/Members/J-a-a-n-s)
35+
* MSDN Reference on Event Log file format: http://msdn.microsoft.com/en-us/library/bb309026(VS.85).aspx
36+
37+
TODO:
38+
-----
39+
* Improve performance (Parallelize log record comparisons?)
40+
* Bring back/rewrite the GUI client
41+
* Refactor/cleanup.

build.bat

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
SET SOLUTION_DIR=C:\Workspace\Development\C#\VS.NET 2005\EventLogAnalyzer
1+
SET SOLUTION_DIR=C:\Workspace\Development\C#\Visual Studio\EventLog Analyzer
22
SET CONSOLE_CLIENT=%SOLUTION_DIR%\Console Client
33
SET EVENT_LOG=%SOLUTION_DIR%\EventLog
44
SET OUTPUT_DIR=%SOLUTION_DIR%\Output
5-
SET PATH=%PATH%;"C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\bin"
5+
SET PATH="C:\Windows\Microsoft.NET\Framework\v2.0.50727";C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin;%PATH%
66

77
cd "%EVENT_LOG%"
88
csc /t:module /out:"%OUTPUT_DIR%\EventLog.netmodule" "%EVENT_LOG%\*.cs"

0 commit comments

Comments
 (0)