KB Article #192020
Collecting Helm and Kubernetes Environment Details for API Gateway and Agents Troubleshooting
Collecting Helm and Kubernetes Information for Troubleshooting
Problem
Axway API Gateway along with Traceability and Discovery agents can be deployed in Kubernetes using Helm charts. When troubleshooting issues, it is important for Support to have a clear understanding of the environment and how the applications are configured.
With Helm deployments, there can be many different configurations and settings applied through values files, command-line overrides, or defaults. Without a structured way to capture this information, troubleshooting may be incomplete or inaccurate.
Resolution
Use the following procedure to capture Helm release details, configuration values, Kubernetes resources, and events for the namespace Axway products are installed. This will provide Support with a complete picture of the environment.
# ===== 1) Setup (Set your namespace as variable) =====
# Set the NS variable to the namespace that the Helm charts are installed
NS="your-namespace"
OUTDIR="support-${NS}"
mkdir -p "$OUTDIR"
# ===== 2) Record and view Helm releases in the namespace =====
# Save helm releases readable table and show it on screen
helm list -n "$NS" | tee "$OUTDIR/helm_releases_table.txt"
# ===== 3) Dump Helm artifacts for RELEASE =====
# Set your release to a name returned from the table above, then repeat this block per release
REL="<releasename>"
# Store user-supplied values only
helm get values "$REL" -n "$NS" > "$OUTDIR/${REL}.values.yaml" 2>&1
# Effective values (user values merged with chart defaults)
helm get values "$REL" -n "$NS" --all > "$OUTDIR/${REL}.values.all.yaml" 2>&1
# The Helm manifest
helm get manifest "$REL" -n "$NS" > "$OUTDIR/${REL}.manifest.yaml" 2>&1
# ===== 4) Get description of all resources in the namespace =====
# Quick table overview
kubectl get all -n "$NS" -o wide > "$OUTDIR/${NS}.resources.txt" 2>&1
# YAML snapshot of everything under "get all"
kubectl get all -n "$NS" -o yaml > "$OUTDIR/${NS}.resources.yaml" 2>&1
# ===== 5) Capture all events in the namespace =====
kubectl get events -n "$NS" --sort-by=.metadata.creationTimestamp > "$OUTDIR/${NS}.events.txt" 2>&1
# ===== 6) [Optional] Flag potentially sensitive information =====
# This command searches for common sensitive keywords (passwords, tokens, keys).
# It will likely show many false positives. Review flagged lines manually and redact anything truly sensitive before sharing.
grep -RInEi '\<(password|passphrase|passwd|pwd|credential(s)?|creds?|api[-_]?key|access[-_]?key|client[-_]?secret|DOMAIN_KEY_PASSPHRASE|auth[-_]?token|refresh[-_]?token)\>' "$OUTDIR"
# ===== 7) Pack results =====
# tar -czf "${OUTDIR}.tar.gz" "$OUTDIR"
The generated support-<namespace> directory (or the compressed tarball)
contains Helm values, rendered manifests, Kubernetes resources, and event logs.
Review for sensitive information and redact if necessary before sharing with Support.