VoIP.info Troubleshooting

Asterisk AMI LoggerRotate is accepted but a log file is missing, stale or wrong

Trace one LoggerRotate contradiction through manager acceptance, effective logger policy, strategy-dependent filename, file reopen, filesystem state, post-rotate work and downstream ingestion.

Reviewed 2026-10-28Current branch-23-generated and Asterisk 22 LoggerRotate action documentation, AMI framing and authorization guidance, logging commands and configuration, bounded debug collection, ARI logging, current logger source and sample configuration, and source-install logrotate guidance were reviewed October 28, 2026; installed Asterisk and FreePBX versions, downstream patches, logger configuration ownership, runtime channels, file paths, rotation strategy, filesystem permissions and labels, free space, external logrotate or post-rotate commands, syslog, collectors, compression, retention and downstream ingestion remain deployment-specific; no PBX, FreePBX system, logger channel, manager account, credential, command, file, directory, inode, descriptor, filesystem, collector, packet, call or media stream was inspected or testedAdvancedDocumentation based · not lab tested

Freeze one node, action and first contradiction

Record node, Asterisk build, process start time, manager identity and permissions, unique ActionID, raw request and response, local and UTC timestamps, expected channel and path, effective logger.conf owner, rotation strategy and external rotation owner. Classify unknown or denied action, manager error, expected file not renamed, new file absent, old file still growing, post-rotate work missing, collector stale or disk space unchanged.

Do not combine clustered nodes or observations from before and after an unrecorded reload or restart. Logger runtime state, files and descriptors are process- and host-local.

Prove the manager boundary before blaming storage

Confirm the action is present for the deployed release and that the authenticated manager identity has the required write authorization. Retain the response that matches the request ActionID; distinguish an AMI parser timeout or connection drop from an explicit Asterisk error.

If acceptance is proven, report only that the logger action was accepted. Do not close the incident at that boundary or invent an AMI list-completion event for this single-response action.

Resolve effective channels and rotation ownership

Inspect the effective logger policy and runtime channels with supported read-only commands or APIs. Determine whether the destination is an Asterisk file channel, a runtime ARI channel, syslog, console, queue log, CDR/CEL backend or an externally managed file. Then read the exact rotatestrategy.

With none, absence of an Asterisk-created rotated filename can be expected and the external rotation owner becomes the next boundary. For sequential, rotate or timestamp, compare the observed names with that strategy rather than one assumed suffix.

Follow rename, reopen and write as separate observations

Capture directory and file metadata before and after: path, owner, group, mode, security label, mount, free space, inode, size and modification time. Where authorized, inspect the Asterisk process descriptor target. Generate one bounded non-sensitive logger event only after preserving the pre-action state.

A renamed old file does not prove the active process reopened the desired path. A new zero-length file can mean no qualifying event was emitted. The old inode continuing to grow points to descriptor or external-rotation coordination, while permission, label, read-only mount, quota or space failures belong to the filesystem boundary.

Trace post-rotate commands and collectors independently

If exec_after_rotate is configured, expand ${filename} according to the active strategy and preserve command identity, execution user, exit status and resulting artifacts. Do not rerun an unreviewed command merely because its output is missing.

For syslog, shippers and collectors, record service state, configured path, cursor or inode identity, read offset, parser result, destination index and timestamps. Compression, retention and deletion can change apparent disk use later; an AMI response cannot prove any of them.

Repair the first owner and verify one bounded event

Assign one owner: AMI availability or permission, logger configuration generation, runtime channel, rotation strategy, external logrotate coordination, directory or file access, security policy, post-rotate command, syslog, shipper, parser, index, compression or retention. Correct only the first demonstrated divergence and preserve rollback.

Repeat one approved rotation and one redacted event, confirming the intended active file and downstream destination while an unaffected control remains observable. Preserve in-use logs, avoid broad permission changes and do not restart the PBX solely to make filenames look familiar. No PBX, file, descriptor, collector, packet, call or media stream was tested for this diagnostic.

Sources & applicability

Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.

Examples require adaptation to your topology. No live PBX or hardware testing is claimed.