
Advanced High-Performance Logging and Tracing for .NET, Java and Delphi
Identify and fix software bugs faster
Monitor and analyze applications in real-time
Find solutions to user-reported issues
Debug production systems while they run

Why SmartInspect?
Find out why thousands of organizations around the world choose SmartInspect to build rock-solid software applications every day
Rich Logging & Tracing
Track messages, errors, objects, database results & more
Advanced Log Viewer
Includes advanced viewer for log analysis and monitoring.
Monitor in Real-Time
High-performance live logging via TCP or named-pipes.
Flexible Log Files
Rich binary or text log files, encryption & advanced rotation.
Powerful Filters & Navigation
Quickly filter & find critical information in huge log files
Trace Threads and Processes
Monitor threads to debug deadlocks and sync issues.
Thousands of small and large teams use SmartInspect, including:


SmartInspect is an advanced .NET logging, Java logging and Delphi logging tool for debugging and monitoring software applications.
It helps you identify bugs, find solutions to user-reported issues and gives you a precise picture of how your software performs in different environments.
Whether you need logging in the development phase, on production systems or at customer sites, SmartInspect is the perfect choice.
Integrate SmartInspect logging in just 5 minutes to get started
SiAuto.Si.Connections = "file(filename=c:\\log.sil)"; SiAuto.Si.Enabled = true; // Log simple messages, warnings and exceptions SiAuto.Main.LogMessage("Processing Order 48843"); SiAuto.Main.LogWarning("Connection refused"); SiAuto.Main.LogException(e); // Log variable values, datasets or any other object SiAuto.Main.LogInt("index", index); SiAuto.Main.LogObject("order", order); SiAuto.Main.LogDataSet("dataSet", dataSet);
SiAuto.Si.Connections = "file(filename=c:\log.sil)" SiAuto.Si.Enabled = True ' Log simple messages, warnings and exceptions SiAuto.Main.LogMessage("Processing Order 48843") SiAuto.Main.LogWarning("Connection refused") SiAuto.Main.LogException(e) ' Log variable values, datasets or any other object SiAuto.Main.LogInt("index", index) SiAuto.Main.LogObject("order", order) SiAuto.Main.LogDataSet("dataSet", dataSet)
SiAuto.si.setConnections("file(filename=c:\\log.sil)"); SiAuto.si.setEnabled(true); // Log simple messages, warnings and exceptions SiAuto.main.logMessage("Processing Order 48843"); SiAuto.main.logWarning("Connection refused"); SiAuto.main.logException(e); // Log variable values, result sets or any other object SiAuto.main.logInt("index", index); SiAuto.main.logObject("order", order); SiAuto.main.logResultSet("resultSet", resultSet);
Si.Connections := 'file(filename=c:\log.sil)'; Si.Enabled := True; { Log simple messages, warnings and exceptions } SiMain.LogMessage('Processing Order 48843'); SiMain.LogWarning('Connection refused'); SiMain.LogException(E); { Log variables value, datasets or any other object } SiMain.LogInteger('Index', Index); SiMain.LogObject('Order', Order); SiMain.LogDataSet('DataSet', DataSet);

“Thanks for such a great piece of software, SmartInspect. I debug high end multi-threaded servers and it is a lifesaver.”
.NET Logging
SmartInspect is the right choice for adding logging support to any .NET desktop application, ASP.NET server project or multi-tier database solution.
In addition to the core features available in all SmartInspect libraries, the .NET library contains additional features for ADO.NET, LINQ and .NET's Trace and Debug API.
Java Logging
All Java applications benefit from the unique features of SmartInspect. Identify and solve problems in your server project or cross-platform desktop app.
Always know exactly how your app behaves and what resources it uses. And if you already use Java's built-in logging, you can easily interface it with SmartInspect.
Delphi Logging
If you are a Delphi for Win32 or C++Builder developer, you can use SmartInspect's native Delphi library to add high-performance logging to your Windows desktop or service application.
Special database log methods and support for Delphi's RTTI make SmartInspect well suited for all kinds of Delphi projects.



Latest SmartInspect News:
SmartInspect 3.4.1 Released
We’ve just released a minor update to SmartInspect.This mostly addresses some issues in the Configuration Builder tool, so unless you are using that, no issue skipping this one. BUG: Fix layout issues when running Builder in scaled environment BUG: Fix issues in Builder when protocols other than File or Text Enhancement: Add TPointF and TRectF
SmartInspect 3.4 Released
A new version of SmartInspect, v3.4, has been released. Some of the enhancements we’ve added in this release include: .net 5 support (also published on nuget) FireMonkey Windows support (yes, FireMonkey cross platform is coming) Console support for PNG images RAD Studio 11 support (and 10.4, 10.3, 10.2, etc, etc) improved Windows scaling support lots
SmartInspect 3.4 Delphi Namespace Changes
One of the new features in the SmartInspect 3.4 release is support for FireMonkey on Windows. This is the first step towards full cross-platform FireMonkey support in an upcoming release. However, adding this support has necessitated a change in the names of the Delphi client units, in order to separate the VCL and FMX clients.