FDC Files

First Failure Data Capture—FDC—is IBM MQ's way of preserving evidence when something goes wrong inside the queue manager itself. Application misconfiguration usually shows up clearly in AMQERR01 with reason codes and object names. Internal faults—assertions, unexpected return paths, memory management issues—produce an FDC file and an AMQ message that tells you to look at it. Beginners sometimes ignore FDC because the filenames look opaque; veterans collect FDC immediately when opening a severity-1 case with IBM. This tutorial explains when MQ creates FDC, how files are named, where they live, how fmtmqfnc helps you read them, how FDC relates to AMQERR and trace, disk and retention practices, and what operations can do before support responds.

When IBM MQ Creates FDC

FDC is not written for every rejected MQPUT. It is written when an MQ component decides an internal error must be recorded—often described as a First Failure situation so the same fault is not logged thousands of times per second. Examples include failures in channel agents, command server components, logger subsystems, or other queue manager processes where continuing silently would hide corruption risk. You might see normal business traffic pause while AMQERR shows a severe message and names an FDC file such as FDC12345.1. The queue manager may continue running, enter retry, or stop depending on the component—read the AMQ text, not only the FDC presence.

Diagnostic tier for MQ incidents
TierArtifactPrimary audience
1 - OperationsAMQERR01, DISPLAY QMSTATUSSite operations
2 - Deep diveMQ trace, GSKit traceSenior MQ admin
3 - Internal faultFDC + fmtmqfncIBM Support / vendor

File Naming and Location

FDC filenames often start with FDC followed by digits and a sequence suffix. They reside in the queue manager error directory—the same tree as AMQERR on Linux and Windows. Use dspmq -m QM1 -o all to confirm paths. When AMQERR says "See FDC file /var/mqm/qmgrs/QM1/errors/FDC98765.1," copy that exact file for your ticket. Multiple FDC files may appear during a single incident if different components fault; collect all files from the same time window. On z/OS, diagnostic packaging differs; your systems programmer may use IPCS or IBM-provided tools rather than a single FDC*.1 file in a Unix directory—still conceptually the same First Failure capture idea.

shell
1
2
3
4
ls -lt /var/mqm/qmgrs/QM1/errors/FDC* # Format for review (command name may vary by platform—see IBM doc): fmtmqfnc /var/mqm/qmgrs/QM1/errors/FDC98765.1 > /tmp/fdc-review.txt less /tmp/fdc-review.txt

Reading FDC With fmtmqfnc

Raw FDC is not meant for casual reading in an editor. The fmtmqfnc utility formats the capture into sections describing the failing process, product level, and internal identifiers. You do not need to interpret every field—IBM Support uses formatted output to map the fault to known defects and fix packs. Your job is to preserve the original file unmodified, run fmtmqfnc if instructed, and attach both queue manager level (dspmqver), maintenance history, and recent AMQERR excerpts. If fmtmqfnc is unavailable on a locked-down server, copy the FDC to a management workstation where MQ client tooling is installed.

Workflow for Support Cases

  1. Capture timestamp, queue manager name, and what changed (fix pack, disk, network).
  2. Save AMQERR01 (and AMQERR02 if rotated) covering the incident.
  3. Copy all FDC files created in the same minute.
  4. Run fmtmqfnc; store output with the case.
  5. Record dspmqver, oslevel, and whether the fault is reproducible in test.
  6. Apply emergency mitigation (failover, restart) per runbook; keep evidence first.

Opening a case without FDC when AMQERR explicitly references FDC delays resolution. If disk was full and FDC could not be written, say so—support will ask for trace reproduction in a lab.

FDC vs Trace

Trace (strmqtrc) is intentional, high-volume logging you enable before reproducing a problem. FDC is automatic capture when an internal check fails. Use trace for protocol and configuration mysteries; use FDC when AMQERR indicates an internal queue manager problem. Enabling trace does not replace FDC—they answer different questions. Never leave production trace at maximum level indefinitely; FDC volume is event-driven but can still fill disk if a component faults in a tight loop.

Disk, Retention, and Housekeeping

The errors directory shares filesystem space with AMQERR and sometimes dump files. Monitoring free space on that mount is as important as monitoring queue depth. Retention policies should keep FDC for open problems and compress or delete aged files after sign-off. Some sites zip monthly FDC into cold storage for compliance. Label archives with queue manager name and date—FDC filenames alone do not carry QM name.

Explainer: Black Box From a Plane

FDC is like an airplane's black box recorder for the queue manager. Passengers only know the flight stopped; investigators download the box to see what broke inside the engine. AMQERR is the pilot's radio call; FDC is the box.

Common Misconceptions

  • FDC does not mean every problem requires a fix pack—support matches known APARs.
  • Deleting FDC before copying it destroys evidence—archive first.
  • Not all AMQ messages imply FDC; many are pure configuration errors.
  • Restarting the queue manager may clear symptoms but keep FDC files from before restart.

Explain Like I'm Five: FDC Files

When the sorting machine breaks inside—not just a wrong address—it takes a special snapshot of what was happening inside its gears so fix-it experts can figure it out. That snapshot is the FDC file.

Practice Exercises

Exercise 1

On a lab system, locate the errors directory and list FDC files. Note the newest three timestamps.

Exercise 2

Find one AMQERR line that references FDC (or simulate from documentation) and draft a support checklist.

Exercise 3

Define a retention rule: how many days FDC stay on disk after case closure.

Frequently Asked Questions

Frequently Asked Questions

Test Your Knowledge

Test Your Knowledge

1. FDC stands for:

  • First Failure Data Capture
  • Fast Data Channel
  • File Distribution Center
  • Federal Data Code

2. FDC is most often used with:

  • IBM Support analysis
  • Application COBOL compile
  • FTP only
  • JCL PROC only

3. AMQERR may reference FDC when:

  • Internal component fault
  • Successful put
  • Happy path ping
  • Empty queue

4. fmtmqfnc is used to:

  • Format FDC for reading
  • Start channels
  • Define queues
  • Reset sequence
Published
Read time17 min
AuthorMainframeMaster
Verified: IBM MQ 9.3 documentation