WeEngineerBetter Ignition gateway analysis

Sample deliverable

The report you receive, in full.

A complete gateway analysis prepared for a fictional facility. Nothing is gated, abridged, or reserved for a sales conversation. The structure, the level of specificity in each finding, and the form of the remediation plan are exactly what a $1,000 gateway analysis produces.

SAMPLE

Cedar Ridge Foods is a fictional company. The facility, the personnel, the tag names, and every finding presented below were constructed for this page. No customer data appears anywhere on this site. Client systems are never published or referenced without written permission, and no such permission has been sought.

Findings were modelled on conditions commonly observed in production Ignition installations. Figures are internally consistent but are not measurements of any real system.

Ignition Gateway Analysis · Standard

Cedar Ridge Foods — Plant 2

DocumentCRF-P2-GWA-01
EngagementGateway analysis, flat rate
Artefact examinedGW-CRF-P2_2024-08-30.gwbk
Gateway versionIgnition 8.1.24
System scale3 projects · 20,518 tags
MethodAI-assisted, engineer-verified
ReviewerIgnition Gold Certified engineer
Findings10 — 3 high, 4 medium, 2 low, 1 info

1 Executive summary

Prepared for the reader responsible for authorising remediation work.

The Ignition gateway serving Plant 2 is operationally stable. No finding in this report indicates a condition likely to cause an unplanned outage in the near term. This is stated at the outset because a report of this kind documents only deviations, and can therefore read as more alarming than the underlying system warrants.

Three findings are rated High and warrant attention within the current quarter. First, an hourly script has been writing production summary data to a database connection that has been in a faulted state since November 2023; approximately 12,200 records have been discarded without notification. Second, 41 configured alarms, including six on refrigeration and four on the clean-in-place skid, are not associated with any notification pipeline and therefore generate no outbound alert. Third, the Operators role holds the same project modification rights as Engineering on the production HMI.

None of the three requires significant development effort. Aggregate remediation is estimated at approximately seven engineer-hours, and two of the three are configuration changes rather than code changes. Sequencing is given in Section 6.

The four Medium findings share a common origin: the system has been extended by multiple parties over several years without an enforced convention. They comprise two concurrent versions of a single user-defined type, a named query that has outgrown its underlying table, a utility function that opens a database connection 1,140 times more frequently than required, and three device connections referencing decommissioned controllers. Individually these are tolerable. Collectively they represent the principal source of future maintenance cost in this system, and remediation cost rises with continued deferral.

3High — current quarter
4Medium — next maintenance window
2Low — at convenience
1Informational

Aggregate estimated remediation effort: 22–27 engineer-hours. Approximately five of those hours account for the majority of the risk reduction available. Those items are isolated in Section 7.

2 Scope and method

2.1 Artefact examined

A single Ignition gateway backup file, GW-CRF-P2_2024-08-30.gwbk, was supplied by the client and sanitised by the client prior to transfer in accordance with the published exclusion list. No live system was accessed at any point. No network connection to the client environment was established or requested.

2.2 Method

The backup was restored to an isolated analysis environment. Configuration was extracted and parsed by automated means, including large language model analysis, across all projects, tag providers, device connections, database connections, scripts, alarm configuration, and security configuration. Automated output was then reviewed in full by an Ignition Gold Certified engineer against the restored gateway. Findings that could not be substantiated against a specific configuration object were discarded and do not appear in this report.

Every finding in Section 4 cites the configuration object from which it was derived, so that the client may verify each independently.

2.3 Exclusions

This analysis is confined to configuration as represented in the supplied backup. It does not include runtime performance measurement, network assessment, PLC program analysis, database schema analysis, or any evaluation of process suitability. Historian values, recipe data, and production records were excluded from the supplied artefact at the client's discretion and were not examined. Section 8 states the limitations of this document in full.

3 System of record

Configuration inventory as extracted from the supplied backup. This section is intended to retain reference value after the findings in Section 4 have been closed.

3.1 Projects

ProjectInheritsResourcesLast modifiedNotes
Common842024-06-11 Parent project. Contains named queries and shared scripts.
PackagingHMICommon2122024-08-02 Primary production HMI. Contains both Perspective and Vision resources.
ReportingCommon312024-03-19 Scheduled reports. Three reference the faulted connection cited in finding 4.1.
MobileViewCommon182021-04-27 No recorded client or gateway launch within the retained log window.

3.2 Tag providers

ProviderTagsUDT definitionsAlarmsNotes
default18,41214109 1,140 tags carry valueChanged scripts. See finding 4.7.
Legacy2,10639 62 tags unreferenced. See finding 4.8. Provider referenced by two Reporting queries.
System Standard provider. No deviation observed.

3.3 Device connections

NameDriverAddressStateReferencing tags
PLC_PACK_01Logix192.168.10.21Connected7,841
PLC_PROC_01Logix192.168.10.22Connected6,204
PLC_UTIL_01Logix192.168.10.24Connected3,110
PLC_REFRIGModbus TCP192.168.10.31Connected412
PLC_OLD_03MicroLogix192.168.10.28Faulted, 14 months188
PLC_TESTLogix192.168.10.99Faulted, 9 months26
PLC_PACK_02_OLDLogix192.168.10.23Faulted, 6 months0

3.4 Database connections, modules, and system configuration

ItemDetailState
CRF_PRODMSSQL 2019, store-and-forward enabledValid
CRF_LEGACYMSSQL 2012, store-and-forward disabledFaulted since 2023-11-02
Installed modulesPerspective, Vision, SQL Bridge, OPC-UA, ReportingAll licensed, all first-party
RedundancyNot configuredSingle point of failure
Gateway backup scheduleNot set. See finding 4.10.Manual only

The installed-module list contains no third-party or custom modules. The engagement therefore qualified for the standard tier, as confirmed during scoping and prior to invoicing.

4 System topology

Derived from the supplied backup. Where this figure differs from existing site documentation, this figure reflects the gateway configuration as it currently exists.

PLC LAYER GATEWAY DATA AND NOTIFICATION CompactLogix L33ER PLC_PACK_01 · 192.168.10.21 ControlLogix L71 PLC_PROC_01 · 192.168.10.22 MicroLogix 1400 PLC_OLD_03 · faulted 14 mo Ignition 8.1.24 GW-CRF-P2 · no redundancy 3 projects · 20,518 tags 7 device connections · 3 faulted 2 database connections · 1 faulted 118 alarms · 41 unrouted 1,140 tag change scripts MSSQL · CRF_PROD batch_log · 11.4M rows no index on start_ts MSSQL · CRF_LEGACY faulted · written hourly Alarm notification 41 alarms → no pipeline Operating as configured Faulted, misrouted, or terminating at no destination
Figure 1. System topology as configured. All elements were derived from the gateway backup file identified in Section 2; no existing site documentation was consulted.

5 Findings

Ordered by severity, then by remediation effort. Each finding cites the configuration object from which it was derived. Severity reflects assessed operational risk in the context of this installation, not a generic scoring scale.

4.1

Hourly summary script writes to a database connection faulted since 2023-11-02

High

Observation. A gateway timer script executes at hourly intervals and issues INSERT statements against the database connection CRF_LEGACY. That connection has reported a Faulted state continuously since 2023-11-02. Store-and-forward is not enabled on the connection, so write operations are discarded at the point of failure rather than queued for later delivery.

Impact. Approximately 12,200 hourly summary records have not been persisted. Any report or query drawing on the destination table returns a dataset that has not advanced in fourteen months. The condition produces no operator-visible indication: the script catches its own exception and logs at DEBUG severity, which is below the default gateway log threshold.

Evidence

  • Gateway Events › Timer › hourlyRollup › line 34
  • Config › Databases › Connections › CRF_LEGACY › status: Faulted

Recommendation. Establish whether the legacy destination table remains required. If it is required, redirect the script to CRF_PROD and enable store-and-forward on the connection. If it is not required, remove the script. In either case, raise the exception handler to ERROR severity so that subsequent failures are surfaced.

Estimated remediation effort: 1–2 hours

4.2

Operator role holds project modification rights on the production HMI

High

Observation. In project PackagingHMI, the Designer access permission grants the Operators role the same project modification rights as the Engineering role. Separately, the default admin account remains present in the default user source with its original credentials unchanged.

Impact. Any account holding the Operators role and access to a Designer installation is able to modify the running production HMI. Modifications made under a shared role cannot be attributed to an individual in the audit log, which materially reduces the value of that log during incident investigation.

Evidence

  • Project › PackagingHMI › Project Properties › Permissions
  • Config › Security › Users, Roles › default › admin

Recommendation. Restrict project modification rights to the Engineering role. Disable or rename the default admin account. Issue named accounts to the individuals who require Designer access so that configuration changes are attributable.

Estimated remediation effort: 2 hours

4.3

Forty-one configured alarms are not associated with any notification pipeline

High

Observation. The gateway holds 118 configured alarms across all tag providers. Of these, 41 have no notification pipeline assigned. The unassigned set includes six alarms on the ammonia refrigeration tag group and four on the clean-in-place skid.

Impact. The affected alarms are recorded in the alarm journal and displayed on HMI screens, but no outbound notification is generated when they become active. Alarms occurring outside staffed hours therefore remain unacknowledged until a screen is observed. The configuration is indistinguishable, from an operator's perspective, from an alarm that does notify.

Evidence

  • Tag Provider › default › Refrigeration/* › Alarms › Notification: none
  • Config › Alarming › Notification › 2 pipelines defined, 1 unreferenced

Recommendation. Classify the 41 alarms into three categories: requiring immediate pipeline assignment, informational and to be documented as such, or obsolete and to be removed. The complete list, ordered by process area, is provided in Appendix B. Assign pipelines to the first category and verify by forcing a test condition on a non-production tag.

Estimated remediation effort: 3–4 hours, exclusive of classification decisions

4.4

Three device connections reference decommissioned controllers

Medium

Observation. The connections PLC_OLD_03, PLC_TEST, and PLC_PACK_02_OLD are configured and enabled, and each is in a Faulted state. Reported fault durations are 14, 9, and 6 months respectively. All three continue to attempt reconnection on a two-second interval.

Impact. The three connections generate an estimated 1.3 million failed connection entries per month. The resulting log volume substantially reduces the diagnostic value of the gateway logs. A persistent faulted state also normalises the fault indication itself, reducing the likelihood that a new fault is noticed.

Evidence

  • Config › OPC UA › Device Connections › PLC_OLD_03 › Faulted
  • Config › OPC UA › Device Connections › PLC_TEST › Faulted
  • Config › OPC UA › Device Connections › PLC_PACK_02_OLD › Faulted

Recommendation. Confirm decommissioned status with the controls group. Disable rather than delete the three connections and observe one full production cycle. If no dependency is identified, delete the connections together with the 214 tags that reference them.

Estimated remediation effort: 1 hour, plus one production cycle of observation

4.5

Two versions of the Motor user-defined type are in concurrent production use

Medium

Observation. The tag provider default contains two UDT definitions, Motor_v2 (156 instances) and Motor_v2_NEW (58 instances). The definitions differ in two member names and in one member data type: RunHours is declared Float in the former and Int in the latter.

Impact. Any script, report, or binding authored against one definition will fail or return an incorrect value when applied to an instance of the other. The Float-to-Int difference produces silent truncation rather than an error, which is the more difficult failure mode to detect. Remediation cost increases with each additional instance created.

Evidence

  • Tag Provider › default › _types_ › Motor_v2
  • Tag Provider › default › _types_ › Motor_v2_NEW

Recommendation. Adopt Motor_v2_NEW as the single definition; the supporting rationale is given in Appendix C. Migrate the 156 remaining instances as a single planned change rather than incrementally. A member-level migration checklist is provided in the same appendix.

Estimated remediation effort: 6–8 hours, performed in one window

4.6

Named query bound at a five-second poll rate performs a full scan of 11.4 million rows

Medium

Observation. Named query getBatchHistory filters batch_log on the column start_ts. No index exists on that column. Measured median execution time is 4.2 seconds. The query is bound to a Perspective table component configured with a five-second polling rate, open on two operator terminals for the majority of each shift.

Impact. Execution time is approaching the polling interval. The table is growing at approximately 340,000 rows per month; on the current trajectory, query duration will exceed the polling interval and produce overlapping executions. Sustained overlap is capable of exhausting the database connection pool.

Evidence

  • Project › Common › Named Queries › getBatchHistory
  • CRF_PROD › dbo.batch_log › 11,412,880 rows › indexes: primary key only

Recommendation. Create a non-clustered index on start_ts; this is projected to reduce median execution time below 100 ms. Change the component binding from a polled refresh to an on-demand refresh. The index statement, projected build duration, and lock behaviour are provided in Appendix D.

Estimated remediation effort: 1 hour, plus an index build during a maintenance window

4.7

A shared utility function opens a discrete database connection on each of 1,140 tag change scripts

Medium

Observation. The function util.logChange() opens a database connection, executes a single statement, and closes the connection on every invocation. The function is called from valueChanged scripts on 1,140 tags in the default provider.

Impact. Under steady-state production the pattern is inefficient but tolerable. During gateway startup or a mass tag update, concurrent invocation produces a connection burst. This behaviour is consistent with the two gateway performance events reported by site personnel in March and June.

Evidence

  • Project › Common › Scripts › util.logChange()
  • Tag Provider › default › 1,140 tags with valueChanged scripts

Recommendation. Revise the function to use the gateway-managed connection pool, or to queue and batch write operations. The change is confined to a single function but affects 1,140 tags; verify on a non-production provider before deployment.

Estimated remediation effort: 3–4 hours including verification

4.8

Sixty-two tags in the Legacy provider have no referencing object

Low

Observation. Sixty-two tags in the Legacy tag provider are not referenced by any binding, script, alarm, or report in any project on the gateway.

Impact. No operational impact is identified. The tags represent a documentation cost: each subsequent engineer examining this system must determine whether they are significant.

Evidence

  • Tag Provider › Legacy › complete list in Appendix E

Recommendation. Export the provider as a backup, delete the 62 tags, and retain the export for twelve months.

Estimated remediation effort: 30 minutes

4.9

Gateway version trails the current release by nine security updates

Low

Observation. The gateway is running version 8.1.24. The current release at the time of analysis is 8.1.44. Nine intervening releases contain security fixes, two of which apply to gateways exposing Perspective on a plant network.

Impact. No finding in this set is remotely exploitable under the network configuration observed in the backup, which is the basis for the Low severity rating. The exposure gap nevertheless widens with each release cycle.

Evidence

  • Status › Overview › Version 8.1.24 (b2023060110)

Recommendation. Schedule an upgrade to the current 8.1 release. No configuration element examined blocks the upgrade. Four bindings require post-upgrade verification; these are identified in Appendix F.

Estimated remediation effort: 4 hours including regression verification

4.10

No scheduled gateway backup is configured

Informational

Observation. The gateway backup schedule is unset. Backups have been taken manually. The most recent backup preceding the file supplied for this analysis was dated 2024-08-19.

Impact. In the event of hardware failure, recovery would require manual reconstruction of 20,518 tags and three projects. This is the lowest-cost finding in this report to remediate and the highest-cost finding to leave unremediated.

Evidence

  • Config › System › Gateway Backup › schedule: not set

Recommendation. Enable a nightly scheduled backup targeting a share that is itself included in the site backup regime.

Estimated remediation effort: 15 minutes

6 Remediation plan

Sequenced so that each phase constitutes a discrete unit of assignable work. Effort estimates assume an engineer already familiar with this installation.

Phase 1 — Immediate. No downtime required.

RefActionEffortVerification
4.10Enable nightly scheduled gateway backup15 min Confirm backup file present on target share at next scheduled interval
4.2Restrict project modification rights; retire default admin account2 h Authenticate as an Operators-role account; confirm Designer opens read-only
4.1Redirect or remove hourly summary script; raise log severity1–2 h Observe one hourly cycle; confirm records persist or script is absent

Phase 2 — Within 30 days.

RefActionEffortVerification
4.3Classify 41 unrouted alarms; assign pipelines to the critical set3–4 h Force one refrigeration alarm on a test tag; confirm notification delivery
4.6Create index on batch_log.start_ts; convert binding to on-demand1 h Re-execute named query; median execution time below 100 ms
4.4Disable three faulted device connections1 h One production cycle without dependency report, then delete

Phase 3 — Next maintenance window.

RefActionEffortVerification
4.5Consolidate Motor UDT definitions; migrate 156 instances6–8 h Appendix C checklist, applied to a sample of 10 instances prior to full migration
4.7Revise util.logChange() to use the managed connection pool3–4 h Verify on non-production provider; monitor connection count at gateway startup
4.9Upgrade gateway from 8.1.24 to current 8.1 release4 h Verify the four bindings identified in Appendix F
4.8Export and delete 62 unreferenced Legacy tags30 min Confirm no project errors following gateway restart

7 Priority actions

The subset of Section 6 delivering the greatest risk reduction per hour expended. Total effort approximately five hours.

  1. Enable the nightly gateway backup (4.10). Fifteen minutes. Eliminates the highest consequence scenario identified in this report.
  2. Assign notification pipelines to the ten refrigeration and CIP alarms (4.3). Approximately one hour. These are the alarms for which absence of notification carries a physical consequence.
  3. Create the index on batch_log.start_ts (4.6). One statement and one index build. Reduces a 4.2-second query below 100 ms and removes a scaling failure mode.
  4. Restrict project modification rights on PackagingHMI (4.2). Approximately twenty minutes. Closes the only finding in this report that requires deliberate action to trigger.
  5. Redirect or remove the hourly summary script (4.1). One hour. Terminates fourteen months of undetected data loss.

8 Limitations and basis of reliance

This section appears in identical terms in every report issued.

  • This analysis is not exhaustive. It comprises an automated examination of a configuration artefact, verified by a certified engineer. Conditions not represented in the supplied backup could not be identified.
  • This document is not a certification, a compliance audit, a safety assessment, or a security assessment, and must not be represented as any of those to a regulator, an insurer, or a certifying body.
  • This document does not substitute for the engineering judgement of personnel familiar with the process. No process operation was observed in the course of this analysis.
  • All content is advisory. Determination of what is changed, and when, rests with the client, as does responsibility for those changes. Liability is limited to the fees paid for this engagement.

Verification and correction. Every finding cites a specific configuration object precisely so that it may be independently verified. Where a finding is determined to be incorrect, the report is corrected and reissued at no charge.

Issued with this report: the document above in PDF and source form, Appendices A through F as referenced, one scheduled walkthrough call of one hour, and thirty days of written question-and-answer support from the date of issue.

Sample document. Cedar Ridge Foods is fictional. No part of this document represents a real customer system.

That is the deliverable. $1,000 flat.

No gate, no sales call required to see the format, and no ambiguity about what arrives. Send the Ignition version and an approximate system size and we will confirm the rate.

Start an analysis