zarunbal / logexpert Goto Github PK
View Code? Open in Web Editor NEWWindows tail program and log file analyzer.
License: Other
Windows tail program and log file analyzer.
License: Other
I have a feature request: implement a Regular expression columnizer.
For me, the main drawback of columnizers in LogExpert is that you have to set up a dev environment and compile them. And always recompile them when you need to slightly adjust the line format.
The Regular expression columnizer would simply take a regular expression as a user input and apply it to each line of a log file while columnizing it.
I would say such columnizer would be able to replace all other columnizers and mainly allow the user to quickly completely change the line format.
Hi, is there a way to create a columizer for arbitrary formats? I couldn't parse IIS logs with the default columnizers. In that case data is separated by spaces.
I wrote a document to present LogExpert to our support and dev teams.
https://www.dropbox.com/s/ue748uy7wh676zp/LogExpert%20top%2010%20features.zip?dl=0
Please find it attached, would that be useful for the project ;-)
Best regards,
When using multiple files, the scrollbar doesn't refresh the status bar with the current "visible" log, because it assumes the current file is actually the file of the current selected line.
It could have some kind of graphical indicator to show the end of one file and the start of another while scrolling.
Whenever I start LogExpert it starts with a small size and centralized on the screen.
Can there be an option to remember the last windows size and position on screen (and re-establish it on next launch)?
Thx
When a file containing %
is drag-and-dropped onto Log Expert 1.6.6 it crashes.
The line height is very high. I want to see as many lines in the window as possible without scrolling.
So can the space gap between lines somehow be reduce e.g. (to one pixel) in the next release?
Thx
this message was posted on another issue related to memory leak 'zarunbal' asked to opend a new issue for this one. here it is:
I'm getting this message all the time
Value of '45000' is not valid for 'Value'. 'Value' should be between 'minimum' and 'maximum'.
Parameter name: Value
ArgumentOutOfRangeException
at System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
at System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)
at LogExpert.LogWindow.OnProgressBarUpdate(ProgressEventArgs e)
at LogExpert.LogWindow.EnterLoadFileStatus()
at LogExpert.LogWindow.LoadFile(String fileName, EncodingOptions encodingOptions)
at LogExpert.LogWindow.ReloadNewFile()
at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallbacks()
When copying lines from the main view the copied lines are truncated at 20000 characters. This can be reproduced by pasting the line into Notepad++ and checking the number of characters.
My expected behaviour: The full line is copied or some indication that the line could not be copied is shown.
Thanks.
Version: 1.6.7
Currently on highlight trigger only highlight trigger text. Is it possible to add option to highlight whole line where trigger found?
Log files can come from multiple servers for the same application. Such feature consolidates these logs in one with chronologicaly sorted lines. It can be a enhancement for "Multifile" mode.
Hi gents,
i'm having some issues with the SFTP plugin.
i've been a user of the older 1.5 /5493 version and suddenly the plugin i used mostly just stopped working throwing a use error message, when i try to reach a machine.
Initially the issue was due to to chilkadotnet plugins, and every time .net would change in my laptop i would need to update it.
Now again i'm facing that issue, but because with the plugin replacement i was not able to sort out my issue, i came to find out a new version of LE (v1.6.7) has been released and i decided to try it.
My main problem now is no matter what plugin dll file i copy inside the plugins folder such are not used my the main application, even i have already un-comment the tag lines in the LogExpert.exe.config file.
Can you assist?
If some logs would be required let me know.
Cheers.
FP
Highlighting is not correctly applied when the line contains a tab \t
character. It seems that for each \t
character present on the line, the highlighting is shifted forward by one character.
For instance, with this highlighter:
I get this result:
Here's the file content:
Contains 0 tab - highlight - blabla
\tContains 1 tab - highlight - blabla
\t\tContains 2 tabs - highlight - blabla
\t\t\tContains 3 tabs - highlight - blabla
\t\t\tContains 3 tabs and 1 more here \t- highlight - blabla
Notes:
Important questions
Plugins are not loaded, the log contains a message like this for every plugin:
2018-04-17 09:52:49.3243|ERROR|LogExpert.PluginRegistry|C:\Program Files\LogExpert\plugins\CsvColumnizer.dllCould not load file or assembly 'CsvColumnizer, Version=1.6.10.0, Culture=neutral, PublicKeyToken=f1d21f1ddfe64bb0' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515) System.IO.FileLoadException System.IO.FileLoadException: Could not load file or assembly 'CsvColumnizer, Version=1.6.10.0, Culture=neutral, PublicKeyToken=f1d21f1ddfe64bb0' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)
File name: 'CsvColumnizer, Version=1.6.10.0, Culture=neutral, PublicKeyToken=f1d21f1ddfe64bb0' ---> System.IO.FileLoadException: Could not load file or assembly 'file:///C:\Program Files\LogExpert\plugins\CsvColumnizer.dll' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)
File name: 'file:///C:\Program Files\LogExpert\plugins\CsvColumnizer.dll' ---> System.NotSupportedException: An attempt was made to load an assembly from a network location which would have caused the assembly to be sandboxed in previous versions of the .NET Framework. This release of the .NET Framework does not enable CAS policy by default, so this load may be dangerous. If this load is not intended to sandbox the assembly, please enable the loadFromRemoteSources switch. See http://go.microsoft.com/fwlink/?LinkId=155569 for more information.
at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks, StackCrawlMark& stackMark)
at System.Reflection.Assembly.LoadFrom(String assemblyFile)
at LogExpert.PluginRegistry.ColumnizerResolveEventHandler(Object sender, ResolveEventArgs args)
at System.AppDomain.OnAssemblyResolveEvent(RuntimeAssembly assembly, String assemblyFullName)
at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection)
at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
at System.Reflection.Assembly.Load(String assemblyString)
at LogExpert.PluginRegistry.LoadPlugins()
The message suggests that a DLL is loaded from a network location, but I fail to see what location that would be. I have simply copied the LogExpert folder into the local "Program Files" folder.
Complete log:
logexpert.log
I have a feature request: it would be useful if LogExpert could mark scrollbar with visual indicators of lines highlighted using Highlighter. You may see such feature in Visual Studio IDE or Chrome browser for example - when you search for a text on a page, positions of searched term occurrences are visually marked on the scrollbar.
It doesn't have to necessarily be marked directly on the scrollbar, for example Glogg has a separate vertical bar right next to the scrollbar for this purpose.
BTW LogExpert is the best application for working with logs I have found. And I have tried several various applications. Keep going! :)
There is an outdated (v1.4.4566.2) and not maintained package for LogExpert at ChocolateyGallery:
https://chocolatey.org/packages/logexpert
As this repo is the new home for the project, it make sense to update the choco package as well. Even better if it could be done automatically from AppVeyor.
Sometimes, it would be useful to have a possibility to enable the word wrap so I don't have to use the horizontal scrollbar.
When copying a filtered line from the "Filter window" it is truncated to the text visible in the "Filter window" and therefore has 4678 characters including truncation marker "..." excluding the line number in front of it.
My expectation: When copying to clip board the whole line is copied and not just the visible part.
Thanks.
Version: 1.6.7
I've got three servers, each of which is producing three log files, that I have to watch. As a consequence, I now have nine tabs open, which works, but isn't particularly nice to navigate, and to watch. Thus I would like to have the ability to join the three log files for one server into a single group "server A", "server B", or "server C", each of which containing three subtabs with the respective log file.
When I goto settings---Persistence---->file location
I can specify where to put the logfiles.
Here I miss an option here to specify a relative path to the installation directory.
I want to specify a target folder which is a brother of the logexpert installation folder with the relative path definition "..\mylogs\ (mind the leading double dots)
Could you add this in the next release?
Thx
I just upgraded to 1.6.4 and now the following happens:
When watching several log files with "Follow tail", it would be nice to have all the files joined into a single view. Colors, or Markers could be used to indicate a log lines source.
Under options the selection reads "Hilighting and triggers..."
Should be "Highlighting and triggers..."
When I try to select the columnizer CSV columnizer, I get the following exception:
Could not load file or assembly 'LumenWorks.Framework.IO, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. A strongly-named assembly is required. (Exception from HRESULT: 0x80131044)
FileLoadException
at CsvColumnizer.CsvColumnizer.Selected(ILogLineColumnizerCallback callback)
at CsvColumnizer.CsvColumnizer.Configure(ILogLineColumnizerCallback callback, String configDir)
at LogExpert.FilterSelectorForm.configButton_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
The DLL LumenWorks.Framework.IO.dll
is present in the plugins
directory and has the version 3.0.0.0.
The LogExpert version is 1.6.7 (portable from an archive, i.e. not installed) running on Windows 7 Ultimate 64-bit. The file is from a local drive.
The log file doesn't contain more information than you may find in the exception I posted.
I'm a big fan of this application. but i encountered a very annoying bug.
using version 1.6.6. if I leave LogExpert open for a log time it increases the memory size used and eventually will make the computer work very slow.
thanks
When I select a line, it becomes white on blue background.
I therefore loose any highlighting set.
It is also a bit strong on the eyes.
Could you allow as an option to have the selection simply surrounced by a rectangle or drawing a line for the top and bottom lines of the "row".
Then, you may have a multi line selection which is why I think the "rectangle" approach might be nicer.
Thanks for taking over this project.
Would be nice if you also mention the original author (which is me) in the license file, even tough I'm not active anymore in this project.
Btw: MIT license requires to keep the copyright notice. So your "edit" is a violation. :)
Hello,
first of all thanks a lot for upgrading this super tool to .NET 4.0.
Compared to the previous version the SV Columnizer seems to be missing in the Options-> Columnizer Menue. I'm not good at regex so it would be glad it you could bring back this feature.
Would be extreamly happy if those two issues could be fixed.
Edit [Zarunbal]: moved the encoding issue to #7
Suggest checking for null after
object data = e.Data.GetData("Shell IDList Array");
in LogWindow_DragOver(object sender, DragEventArgs e) (LogTabWindow.cs)
e.g.:
add
if (data == null) return; // prevent other dragged items crashing
Should I attempt to commit this to Development branch and raise pull request?
Here we have sometimes very long lines (24k chars). They are white in LogExpert
Release Version 1.6.10 is continually detected as a trojan by Windows Defender
I hope this is a false positive, however more action is required by the developer to ensure this.
Details
I have already submitted a sample to Microsoft as a corporate user - recieved answer that file is safe, however new definitions still flag it as unsafe.
Have also submitted both EXE and entire zip to virustotal for scanning. EXE scans clean
Action required
As the developer, please submit EXE for analysis at https://www.microsoft.com/en-us/wdsi/filesubmission
Hello,
I'm using LogExpert for quite some time.
Now, my company want to write the logs in a "json line" format.
Would you have an example of Columnizer (code/bin) that would efficiently deal with json format like the 2 log lines below?
{"ts":"2017-11-09 11:20:54,018Z","level":"INFO","msg":"Starting AssetApplication v0.5.51 on 49723547f7f3 with PID 1 (/asset.jar started by root in /)","host":"49723547f7f3","app":"PhAsset","item":"com.asset.AssetApplication","pid":"1","tid":"main"}
{"ts":"2017-11-09 11:20:54,336Z","level":"DEBUG","msg":"Running with Spring Boot v1.5.2.RELEASE, Spring v4.3.7.RELEASE","host":"49723547f7f3","app":"PhAsset","item":"com.asset.AssetApplication","pid":"1","tid":"main"}
Thank you in advance.
Pierre
Missing CSV Columnizer in Version greater than
1.5 build 5493
When I select in settings---Persistence----Own directory
a folder which contains blanks then the path is cut in display:
Example:
D:\tools\logfile 2018\ ----> D:\tools\logfile
Pls fix.
Furthermore I miss an option here to specify a relative path to the installation directory.
I want to specify a target folder which is a brother of the logexpert installation folder with the relative path definition "..\mylogs\ (mind the leading double dots)
Could you add this in the next release?
Version: 151
OS: Windows 10
When I drop files into the program from explorer it crashes. If I open the same file from with in the program it works fine.
Could not find a log file to give you.
Highlighting is not correctly applied on words ending the lines: the last character is not highlighted. This seem to happen on files with LF
as well as CRLF
as line endings.
For instance, with this highlighter (used to highlight IP addresses):
I get this result:
Note that the first IP address is correctly highlighted, but not the second one.
Notes:
When selecting a line, and then selecting a line above, relative to the first, the newly selected line will render the contents of the previous one. See gif.
OS: Windows 10.
Current Version 1.6.6
Multifile mask: *$I.log
First file RailX_01.log loaded, enabled multi file
After 20 MegaBytes file closes, and RailX_02.log will be used by my app.
LogExpert doesn't show the transition to the second file (would be nice to see the title tab changing)
While operating with Alt-Up / Down I saw the is a switch over.
The data is shown wrong.
Screenshot:
Line 11465 is the FIRST line of RailX_01.log
Line 1-11464 are the lines from RailX_02.log at the time I saw the usage of Multifile.
See the time stamps in the screenshots.
RailX_01.log contains 93109 lines, size 20MB
RailX_02.log contains 93200 lines, size 20MB
Lines counter isn't updated anymore. While writing this ticket transition to RailX_03/04.log hasn't been noticed.
I miss an option to save logfile and persistence file in a sub directory "log" of current installation directory.
When I put LogExpert onto an USB flash drive and drive letter changes the sub directory should change automatically as well.
So I need a relative folder definition ".\log" (mind the dot)
Can this be added in the next release?
Thx
Hi, is LogExpert supposed to support multiline messages (like StackTraces)
My version seems to treat each message of the multiline message as a separate line. E.g. filtering shows only one line of the multiline message.
It would be nice if I could bring LogExpert with myself on an usb stick with the same settings.
Like if there is a settings.dat
next to LogExpert.exe
then use that otherwise use the appdata directory.
Btw: Thanks for this application it made my life much easier
Hello, I've found a bug, will try to describe it:
Bug No.1:
Bug No.2:
Important note:
It seems that hex NUL (null) char is causing this issue. So, on line 2, there is no space char after serial number, but NUL char instead and vice versa.
testfile.log
Usually when a log file is appended to, the only visible update is that the new lines are shown.
But sometimes (almost always with larger files?) the entire file seems to get reloaded (with a progress bar in the statusbar) and the line/text columns are removed and re-added. This is hugely distracting and slow and makes the program useless for such logfiles where this happens constantly.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.