Skip to main content

Prerequisites

  • The Loft desktop app installed and signed in. Loft is a Pro product; it provides the pidgeon loft commands and the local Bridge on localhost:5100. The free dotnet tool install --global Pidgeon.CLI build does not include loft.
  • Access to Mirth Connect’s file writer output directories.
  • A vendor profile for your message patterns (optional but recommended). pidgeon config analyze is in the free CLI.

Step 1: Identify Mirth output directories

Mirth Connect file writer destinations typically save to a configured directory. Common paths:
Check your Mirth channel configuration for the exact paths.

Step 2: Create a vendor profile

If you have sample messages from each interface, create a profile so Loft knows what “correct” looks like:

Step 3: Start monitoring via CLI

Watch a single interface:
Loft monitors the directory, validates each new .hl7 file as it arrives, and alerts on failures.

Step 4: Create interfaces via the Bridge API

For production setups, create interfaces through the Loft desktop app’s local Bridge sidecar so they persist and appear in the Sources panel. The Bridge runs on localhost:5100 while the Loft app is open. There is no hosted API; every call below is local to the machine running Loft:
Repeat for each interface (lab results, pharmacy), changing name, directoryPath, and profileName. The Interface Monitoring page has the full field reference.

Step 5: Configure alerting

Set up alerts in the Loft desktop app or via the Bridge API. Loft has six channels: local log, webhook, Slack, Microsoft Teams, email, and PagerDuty. Payloads to off-device channels are scrubbed of message content before they leave the machine. See Alerting for the full channel model and routing options.

Step 6: Monitor metrics

Check interface health through the local Bridge API:
Or view the dashboard in the Loft desktop app’s Dashboards panel.

Step 7: Trace patient journeys

Track a specific patient’s messages across interfaces:
This returns every message processed for that patient across all monitored interfaces, with timestamps and validation results.

Live updates

Subscribe to live updates via SignalR for dashboard integration, against the local Bridge:

Next steps