Freeze one node, span and contradiction
Record node, Asterisk build, process start context, chan_dahdi, libpri and DAHDI versions, configuration source, expected PRI and DAHDI span identifiers, D-channel role, manager identity, request and response, recent alarms and the first contradictory timestamp.
Classify the symptom as unknown or denied action, missing span, unexpected span, down or alarmed status, PRI and DAHDI mapping mismatch, no debug file, empty or partial debug output, excessive output, or call behavior that contradicts the control-plane evidence.
Prove action and module support before reading absence
PRIShowSpans is documented since 10.0.0; the three PRI debug actions are documented since 13.0.0. Confirm the installed branch, loaded chan_dahdi, libpri and DAHDI context, then inventory the actions visible to the authenticated manager account.
An unknown action, missing module or denied request is an observation failure, not proof that the PRI span is absent. Correct only that visibility boundary before interpreting a response.
Repeat broad and narrow snapshots without inventing framing
Issue PRIShowSpans with a fresh ActionID and omit Span or use zero for the broad request, then repeat with the expected explicit span. Preserve complete raw responses and timestamps; do not wait for an undocumented completion event.
Compare the returned status with the DAHDI span and channel snapshot, generated and effective configuration, module state and hardware inventory on the same node. Mark unmatched identifiers instead of assuming PRI span and DAHDI span numbers are interchangeable.
Bound debug setup, reproduction and teardown
After authorization, choose one span, an approved file path, the least sufficient documented level and a short observation window. Record the PRIDebugFileSet and PRIDebugSet responses, the reproduction marker, file growth, first and last relevant frame, then set that span to off and issue PRIDebugFileUnset as separate actions.
If output is absent, check path ownership, filesystem space, active debug level, correct span, event timing and whether the expected signaling exchange occurred. Do not broaden to intense or indefinite capture merely because a file is empty.
Cross the DAHDI and carrier boundaries deliberately
Order SpanAlarm and SpanAlarmClear transitions and reconcile them with PRI status, DAHDI driver state, D-channel state, timing source, framing, coding, cabling, smart jack or gateway and carrier handoff. Use the responsible owner for each boundary and preserve their identifiers.
An alarm description or PRI debug trace does not by itself locate a cable, clock or carrier fault. Conversely, a clear event is a transition, not proof of uninterrupted stability or successful calls afterward.
Repair the first demonstrated owner and verify narrowly
Correct only the proven owner: version or module support, AMI authorization, collector framing, configuration generation, PRI-to-DAHDI mapping, debug path, debug state, driver, timing, framing, coding, hardware, cabling or carrier service. Repeat the broad and narrow snapshots and retain the next relevant alarm transition.
Only in an authorized maintenance window, place one bounded test call and record signaling, answer, two-way audio and release as separate outcomes. Remove debug state and file output, confirm storage cleanup, and preserve the rollback. No system, span, circuit, frame or call was tested for this diagnostic.
Sources & applicability
Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.
- Asterisk PRIShowSpans AMI action ↗
- Asterisk PRIDebugSet AMI action ↗
- Asterisk PRIDebugFileSet AMI action ↗
- Asterisk PRIDebugFileUnset AMI action ↗
- Asterisk SpanAlarm AMI event ↗
- Asterisk SpanAlarmClear AMI event ↗
- Asterisk AMI v2 specification ↗
- Asterisk Manager TCP/IP API ↗
- Asterisk AMI event filtering ↗
- Asterisk logging configuration ↗
- Asterisk network security guidance ↗
Examples require adaptation to your topology. No live PBX or hardware testing is claimed.