Kindling - a collection of tools to help with Ignition

Can you DM me that log file? I didn't think the format of the logging IDB had changed significantly, but it's possible I guess.

Kindling v1.0.1 is now available!

What's Changed

Kindling has been moved to the Inductive Automation Github organization, and is now code-signed with Inductive Automation's code signing certificate as part of a deployment strategy change from JDeploy to Hydraulic Conveyor. This enables fully modern, code-signed, notarized, executables that will auto update for Windows, Linux, and MacOS installation.

The core functionality is largely the same as the previous release, with some library updates, but this new release strategy will require a fresh download and install for all users; this should hopefully be the last time, since I'll be able to rely on Conveyor to automatically update.


While Kindling has moved to the Inductive Automation organization on Github, it is not an "official" IA product, and has no guarantee of maintenance or support. It is provided with no warranty; see the license file in the repository for more details.


Kindling v1.1.0 is now available! Anyone who has installed 1.0.1 should automatically get a prompt to autoupdate ~soon, or you can manually download the new release and install it.

What's Changed

  • A new shared preferences storage mechanism, including the following:
    • A whole array of new themes
    • A global UI scale option to improve accessibility
    • A persistent default tool and default opening location
    • UI preferences for log and thread views
    • An Advanced preference "Hyperlink Strategy" so that lines in stacktraces will open directly in Jetbrains IDEs (requires you have the Youtrack plugin installed)
  • Removed the Zip4J dependency in favor of JDK builtin Zip Handling
  • Added support for deserializing BasicDatasets in S+F cache dumps
  • A vastly overhauled log view
    • Added time based filtering UI
    • Added MDC based filtering UI
    • Added thread based filtering UI
    • Added right click menu options to filter log events by:
      • Level
      • Logger
      • Thread
      • Stacktrace

Full Changelog: Comparing 1.0.1...1.1.0 · inductiveautomation/kindling · GitHub


Kindling 1.2.0 is now available. This is a smaller release, but fixes a bunch of cosmetic issues, especially on MacOS, and unifies the filtering UI of logs and thread views for better consistency. And adds a neat project logo, the most important feature :slight_smile:

What's Changed

  • A project logo!
  • Improved log and thread panel filtering for consistency
  • Fix Windows file compatibility issue with JFileChooser

Full Changelog: Comparing 1.1.0...1.2.0 · inductiveautomation/kindling · GitHub


Thank god, it was unusable with the project logo!


Thank you so much. This tool just solved my gateway audit problem in a jiffy. You are great Paul!!!


Hello @PGriffith, the tool is really nice, I have a question,

what this is referring to actually, I saw some spike at the end of the graph, what I should have understood from that graph spike.
Can you please let me know?

My understanding is that it's a graph of the activity level over the timeline. Eg less activity (fewer logs within a time window) will show a graph closer to the left, more activity (more logs within a time frame) will show a graph further to the right

That's the idea, yeah. It's currently pretty broken, though. Planned to be revisited, someday: Improve log graph view "minimap" · Issue #17 · inductiveautomation/kindling · GitHub

Thank you @nminchin and @PGriffith, please keep us posted, if you have optimized that

Kindling 1.2.1 is now available:


  • Table sizes and sorting in raw IDB views:

  • Support for locally hosting a Gateway Network Diagram in the same UI as available on the gateway webpage - big shout out to first time contributor @mgross:

  • Fixes a few miscellaneous bugs :slight_smile:


Kindling 1.3.0 is now available:


  • A new 'landing' page that shows off all the available tools. Click a button to open a file selector for that tool, or drag and drop an external file onto your tool of choice.

  • A 'statistics' view, calculated on the fly from an opened .GWBK:

  • A dedicated XML viewer, with 'subeditor' support for Logback XML files and store and forward quarantine exports

  • A dedicated viewer for serialized alarm cache files:

  • Various bug fixes and some performance improvements

  • UI improvements throughout, including these nicer sidebar tabs in logs and thread views, the ability to "capture" a timestamp range in logs, a display of dense timestamps in the logs, and a bunch more stuff I'm probably forgetting about :smile:

As always, thanks to contributors on IA's Support Apps team for their help bringing these new features to fruition!


1.3.1 is now available, a quick hotfix for an issue opening thread dumps contained inside archives/zip files.


I've been playing with kindling, trying to figure out a workflow to accomodate the following use case.

Let's say I have many sites for various clients, not on a gateway network - a single client portfolio of 5 on the small end, 50 to 100 on the large end - and I want to compare settings from GWBKs of each one. I want to create and review a table of settings in various configuration pages, for each gateway. This will enable me to quickly compare settings and identify cases where settings are unexpectedly out of alignment.

The statistics page when opening a GWBK is a great tool to see certain settings, projects, devices, etc. Is there a way to extend this to daylight a fuller set of gateway settings?

I'd probably have to see exactly what you're trying to compare. Kindling has a concept of a "multi" tool already built in - so e.g opening a single thread dump vs opening a series of thread dumps and aggregating them together... but I'm not really sure how broadly useful a "multi gateway backup view" would be, since it would probably just end up showing the individual backups in a tab strip 'below' the comparison UI, whatever that ends up looking like.

For your specific use case, maybe look into the sqldiff command line tool provided with SQLite? sqldiff.exe: Database Difference Utility
It spits out any/all SQL commands needed to get from SQLite file A to SQLite file B - so you could use it as a "diff" tool. Unfortunately there's no great way to run sqldiff from within Kindling, so you'd have to use it externally.

1 Like

You should be able to diff the json gw config file in v8.3 when it's out, right?

1 Like

It won't be a single file, it'll be a complex hierarchy of files much like the current project system.

Absolutely possible to diff, potentially, but I'll leave that as a problem for Future Paul :wink:.

Can you get word from him on a feature preview of 8.3?