ModulesTroubleshooting & Diagnostics
Systematic Troubleshooting Methodology
Effective PI System troubleshooting follows a structured approach: Define → Isolate → Diagnose → Resolve → Verify.
Troubleshooting Framework
1. DEFINE the problem
├── What is the symptom?
├── When did it start?
├── What changed recently?
└── What is the impact?
2. ISOLATE the scope
├── Single tag or multiple tags?
├── Single interface or all interfaces?
├── Specific time range or ongoing?
└── Specific users or all users?
3. DIAGNOSE the root cause
├── Check PI System logs
├── Verify interface status
├── Review configuration changes
└── Test connectivity
4. RESOLVE with targeted fix
├── Apply configuration change
├── Restart service if needed
├── Restore from backup if necessary
└── Document the fix
5. VERIFY the resolution
├── Confirm data is flowing
├── Check for recurrence
└── Update runbookCommon Issue: Data Gaps
Data gaps are the most frequent PI System issue. Systematic diagnosis:
Data Gap Decision Tree
Tag shows "No Data" or flat line?
├── Check tag's current value in SMT
│ ├── Shows "Shutdown" → Interface not running
│ ├── Shows "Comm Fail" → Interface running but source unreachable
│ ├── Shows "I/O Timeout" → Network issue to data source
│ └── Shows valid value → Compression filtering data (check settings)
│
├── Check interface status in PI ICU
│ ├── Interface stopped → Start interface service
│ ├── Interface running but errors → Check interface log
│ └── Interface running, no errors → Check OPC server connectivity
│
└── Check PIBUFSS status
├── Buffer growing → PI Server unreachable from interface node
└── Buffer empty, no data → Data not reaching interfacePI System Log Files
| Log File | Location | Contains |
|---|---|---|
| piarchss.log | C:\PI\log\ | Archive subsystem events |
| pisnapss.log | C:\PI\log\ | Snapshot subsystem events |
| pibufss.log | C:\PI\log\ | Buffering agent events |
| piinterface.log | C:\PI\log\ | Interface events |
| piwebapi.log | C:\PI\log\ | Web API events |
| AF Server log | Event Viewer | AF Server events |
Interface Failure Diagnosis
# Check interface service status
Get-Service -Name "PI*" | Select-Object Name, Status, StartType
# Check interface log for errors
Get-Content "C:\PI\log\piinterface.log" -Tail 100 |
Where-Object { $_ -match "ERROR|WARN|FAIL" }
# Test OPC server connectivity
$opcServer = New-Object -ComObject "OPCAutomation.OPCServer"
$opcServer.Connect("Kepware.KEPServerEX.V6", "OPCSERVER01")
Write-Host "OPC Connected: $($opcServer.ServerState)"AF Configuration Issues
Common AF problems and solutions:
| Issue | Symptom | Solution |
|---|---|---|
| Broken PI Point reference | Attribute shows "No Data" | Verify tag name in attribute config |
| Analysis not running | Calculated attribute stale | Check Analysis Service status |
| UOM mismatch | Wrong engineering units | Verify UOM in attribute template |
| Circular reference | Analysis error | Review formula dependencies |
| Missing element template | Cannot create elements | Import template from backup |