Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A multi-purpose logviewer

License

NotificationsYou must be signed in to change notification settings

beNative/LogViewer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LogViewer is a general purpose message viewer for log messages with support for multiple sources to receive messages from. The application is a modular design which can easily be extended to support other message types and transfer protocols.

Currently supported are:

  • Windows IPC (usingWM_COPY messages)
  • ZeroMQ (PUB/SUB socket) for logging over the network. It demonstrates the brilliant performance of ZMQ sockets.

Currently in progress:

  • Serial port (native RS232, USB or Bluetooth)
  • WindowsOutputDebugString API
  • MQTT (commonly used by IOT devices)

Each of thesereceivers support multiplesubscribers for which messages can be displayed in a dedicated logviewer.

I compiled a pre-release version to play with in thereleases section. I included the unit test executable that can be used to generate some sample logging.

Screenshots

Message viewer

LogViewer

LogViewer

LogViewer

LogViewer

Call Stack

CallStack

Watch List

Watch list with value history support. The history list can be automatically synchronize with the message list to monitor the value at any given time.

WatchList

Message Filter

Client side

MessageFilterClient

Source side

MessageFilterSource

Settings Dialog

Fully customizable message display settings.

Settings

UML diagrams

In theDocuments folder you will find some UML diagrams which reveal the main application architecture.

ILogViewerManagerTLogViewerSettings

There is also a mindmap with a technical overview of the application:LogViewer.xmindYou need XMind to open this document. You can download a free version from the main website:XMind.

I made an image snapshot of the mindmap that you can open here:LogViewer.Mindmap.png

ILogger API

TheDDuce library provides the Logger module to add logging to your application (Delphi/FreePascal-Lazarus).The DDuce demo application demonstrates the currently supported message types.

Logger demo

More examples can be found in my other Delphi projects listed on Github. LogViewer is also able to emit log messages by itself which can be monitored in another instance. Therefore the source instance needs to have the setting 'Emit log messages' enabled. The other instance needs to be started in 'debug mode' which also can be configured in the application settings.

A subset of this API has been ported to FPC/Lazarus. Take a look at my Lazarus projects to see examples how they are used.

Features currently supported using the ILogger interface methods

  • Info/Warning and Error messages
  • Method tracking with stack display showing execution times
  • Screenshot capture
  • Conditional logging
  • Checkpoints
  • Counters
  • Watches + value history support
  • Datasets
  • Bitmaps, and various other image formats
  • Objects
  • Components
  • Native value types with type information
  • Text with suppport for multiple highlighters
  • Actions
  • Up to 32 user-definable logging levels

Libraries used

The Object Pascal (Delphi) sources depend on the following open source libraries and components:


[8]ページ先頭

©2009-2025 Movatter.jp