Which logging library is better? [closed]
Asked Answered
H

10

23

I was wondering; which logging libraries for Delphi do you prefer?

Please try to add a reasoning why you prefer one over the other if you've used more than one.

I'll add suggestions to this question to keep things readable.

Hardie answered 16/9, 2008 at 14:34 Comment(1)
Here's an answer I gave that's relevant (not a comparison) https://mcmap.net/q/547879/-good-free-delphi-logging-frameworkParvenu
E
10

SmartInspect is really useful. It is the only one I have used. The logging library is good, but the console and the remote TCP/IP logging takes it over the top. I think CodeSite has some similar features.

Emulate answered 17/9, 2008 at 16:30 Comment(1)
I liked the features but I have a home-rolled solution that requires a built-in GUI that my end-users can also use and SmartInspect only has a stand-alone viewer.Henriettahenriette
A
11

I've used Codesite and it has been fantastic. On one project, a word-processor, I could easily output a million debug lines, all structured, and Codesite helped greatly with its auto-collapsing indented output. For any task where you have to know what really is happening "underneath" a process that can't be interrupted by user interaction, Codesite is really good. I recommend it heartily.

Avicenna answered 16/9, 2008 at 14:55 Comment(2)
Have you compared CodeSite to other tools? What made you choose CodeSite?Hardie
The viewer is very good. What I didn't like that much about CodeSite is that it is elaborate to setup with it's dispatcher and viewer and some extra rights needed in the documents and settings\all users folder.Rare
E
10

SmartInspect is really useful. It is the only one I have used. The logging library is good, but the console and the remote TCP/IP logging takes it over the top. I think CodeSite has some similar features.

Emulate answered 17/9, 2008 at 16:30 Comment(1)
I liked the features but I have a home-rolled solution that requires a built-in GUI that my end-users can also use and SmartInspect only has a stand-alone viewer.Henriettahenriette
S
10

Take a look at the features of this Open Source unit: http://blog.synopse.info/post/2011/04/14/Enhanced-logging-in-SynCommons

  • logging with a set of levels (not only a hierarchy of levels);
  • fast, low execution overhead;
  • can load .map file symbols to be used in logging;
  • compression of .map into binary .mab (900 KB -> 70 KB);
  • optional inclusion of the .map/.mab into the .exe;
  • handle libraries (.ocx/.dll);
  • exception logging (Delphi or low-level exceptions) with unit names and line numbers;
  • optional stack trace with units and line numbers;
  • methods or procedure recursive tracing, with Enter and auto-Leave;
  • high resolution time stamps, for customer-side profiling of the application execution;
  • set / enumerates / TList / TPersistent / TObjectList / dynamic array JSON serialization;
  • per-thread, rotating or global logging;
  • multiple log files on the same process;
  • optional colored console display;
  • optional redirected logging (e.g. to third party library, or to a remote server);
  • log viewer GUI application, with per event or per thread filters, and method execution profiler;
  • Open Source, works from Delphi 5 up to XE6 (Win32 and Win64).

Your feedback is welcome!

Stephen answered 15/4, 2011 at 12:8 Comment(9)
HI Arnaud, a GUI log viewer is necessary!Hatteras
@Edwin OK - I'm currently working on it. :)Stephen
@Arnaud, that's sooo great! I was planning to evaluate Smart Inspect, the key feature to me is that my clients can send me a log file and then I can use a GUI to view, search and filter the log entries, so that I can locate problems in my software :) But I'm not in a hurry so I'll wait for your implementation, on the other hand, you are very fast in delivering high quality open source Delphi gems, I meant it.Hatteras
@Edwin See blog.synopse.info/post/2011/08/20/Enhanced-Log-viewer about the new log viewer tool available for our TSynLog class.Stephen
@Arnaud Bouchez sounds great but where is the download link ?Mireillemireles
the SyncCommons Logging feature is available under SQLite3 Framework ?Mireillemireles
Not 64 bit compatible, alas...Hardie
@Hardie I could add this easily. But you are the first one asking for it directly by now. Ask in the Synopse's forum. Not a lot of work (only difficulty is with exception handling - all other code is already 64 bit ready).Stephen
64 bit compatibility is available - see blog.synopse.info/post/2013/03/07/…Stephen
R
5

And don't forget the free open source TraceTool

Rare answered 16/9, 2008 at 16:49 Comment(0)
P
5

I have just updated Log4Delphi 0.8 on the Sourceforge page and it rolls up patches and bug fixes from the last 4 years.

Sourceforge Log4Delphi Downloads

Phosphoric answered 12/11, 2010 at 13:49 Comment(0)
A
4

Log4net/ports of Log4xxx to other languages. It's open-source, pretty wide-spread, popular, has a good community behind, and isused widel (for example, in Hibernate/nHibernate).

Austronesia answered 16/9, 2008 at 14:36 Comment(2)
I'm sorry, but I meant this as a Delphi-only question. I've edited the question to better show that intention.Hardie
And now I've found the port to Delphi, thanks for the mention - I didn't know about this yet!Hardie
H
3

An important value behind CodeSite is Ray Kanopka's support. He personally answers emails and newsgroup posts, and has done so for many years. His answers often contain code that illustrates excellent coding habits.

Hexapartite answered 19/9, 2008 at 3:24 Comment(0)
D
1

I didn't use CodeSite probably because I'm completely happy with SmartInspect. Highly recommended.

Dank answered 16/9, 2008 at 14:44 Comment(0)
H
0

I am looking into Codesite as well. I built my own in the past but I really like the featrues in Codesite. The Raize componenets are very well written and always quality stuff.

Halcomb answered 16/9, 2008 at 15:53 Comment(0)
J
0

Log4D is another implementation which is based on Log4J and easy to extend and configure.

Jeromyjerreed answered 2/4, 2009 at 8:59 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.