
🧮 LD Crimson Inspector
A specialized desktop application for analyzing large Crimson POS log files
PythonTkinterttkbootstrapPandasThreadingRegex

Overview
LD Crimson Inspector is a specialized desktop application I developed to help London Drugs' IT team analyze large Crimson POS log files quickly and accurately. The tool was born out of necessity — during the company's nationwide Dynamics 365 rollout, our support team often dealt with massive 200–700 MB log files containing crucial transaction data. Manual inspection was slow, error-prone, and frustrating.
I created LD Crimson Inspector to transform that process. The idea was to make log analysis as simple as searching a web page — with instant filtering, pattern detection, and intelligent grouping of events.
Tech Stack
The application was built using Python with Tkinter (later enhanced with ttkbootstrap for a modern UI). It supports offline operation, meaning it can analyze logs without network access — critical for secure store environments.
Key libraries include re (regex) for pattern recognition, threading for performance, and Pandas for data handling. I also integrated custom parsers that identify timestamps, SAF (Store And Forward) codes, and transaction threads.
Challenges
The main challenge was performance. A typical Crimson log could exceed 500 MB, and naive line-by-line parsing would take minutes. I had to rewrite the parser to process data in chunks using memory-efficient generators.
Another challenge was the diversity of log structures. Each file had slightly different message patterns and timestamps, requiring flexible pattern detection instead of fixed rules.
Finally, the UI design — balancing readability with dense data — was a struggle. I wanted a modern, dark-mode-friendly interface that technicians could use comfortably for hours.
Solution
I built a multithreaded parsing engine that could scan gigabytes of data in under two minutes. It automatically identifies transaction boundaries, error codes, and SAF events, then organizes them into a searchable timeline.
The interface lets users jump between transactions, view failure summaries, and filter by keywords or timestamps. I also added export features to CSV and HTML so findings could be shared in reports.
Impact
The LD Crimson Inspector drastically improved support workflows. What once took 30–40 minutes of manual log review can now be done in less than 2 minutes. It became an internal essential tool for diagnosing store issues and verifying transaction flows.
Building it also sparked ideas for extending it into an AI-powered version capable of suggesting root causes based on log patterns — something I'm currently exploring for future iterations.