Troubleshooting Guide

Diagnose and resolve common issues with Kollect discovery and platform connections.

Start here

Check platform connections

See which platforms Kollect can reach:

curl http://localhost:8080/api/check-credentials

No data showing

  1. Make sure you specified an inventory type: ./kollect --inventory all
  2. Confirm your cloud CLI tools are configured and authenticated
  3. Read the terminal output — collection warnings are printed per platform
  4. Or launch ./kollect --browser and connect a platform from the UI

Web interface not loading

# Is something already on the port?
lsof -i :8080            # macOS/Linux
netstat -tulpn | grep :8080

# Is kollect running?
ps aux | grep kollect

Platform connection issues

AWS

AWS shows "Not Connected".

  1. Test CLI access: aws sts get-caller-identity
  2. Check credentials exist: ls ~/.aws/
  3. Try directly: ./kollect --inventory aws

Minimum read-only permissions

ec2:Describe*
s3:ListAllMyBuckets
s3:GetBucket*
rds:Describe*
dynamodb:ListTables
dynamodb:DescribeTable

Azure

Azure shows "Not Connected".

  1. Check the session: az account show
  2. Log in if needed: az login
  3. Try directly: ./kollect --inventory azure

Google Cloud

GCP shows "Not Connected".

  1. Check auth: gcloud auth list / gcloud config get-value project
  2. Set application-default credentials: gcloud auth application-default login
  3. Try directly: ./kollect --inventory gcp

Kubernetes / OpenShift

Kubernetes shows "Not Connected".

  1. Test access: kubectl cluster-info / kubectl get nodes
  2. Check contexts: kubectl config get-contexts
  3. Point at a specific config/context:
    ./kollect --inventory kubernetes --kubeconfig ~/.kube/config --kube-context prod

OpenShift uses the same kubeconfig — collect it with ./kollect --inventory openshift.

Docker

Docker shows "Not Connected" or "permission denied".

  1. Test the daemon: docker info / docker ps
  2. On Linux, add your user to the docker group: sudo usermod -aG docker $USER (then log out/in)
  3. Point at a specific socket/host:
    ./kollect --inventory docker --docker-host unix:///var/run/docker.sock

VMware vSphere

vSphere shows "Not Connected".

  1. Check connectivity: ping vcenter.example.com
  2. Connect with flags (add --vsphere-insecure for self-signed certs):
    ./kollect --inventory vsphere \
      --vsphere-server vcenter.example.com \
      --vsphere-username readonly@vsphere.local \
      --vsphere-password '******' \
      --vsphere-insecure
  3. Or use VSPHERE_SERVER / VSPHERE_USERNAME / VSPHERE_PASSWORD / VSPHERE_INSECURE.

Hyper-V

Hyper-V connection fails or returns an empty body / 500.

  1. Kollect connects over WinRM. Domain hosts that enforce message encryption need HTTPS: add --hyperv-https.
  2. For domain accounts, try Kerberos: --hyperv-auth kerberos (with --hyperv-realm / --hyperv-kdc if discovery fails).
  3. To include a failover cluster's nodes, add --hyperv-cluster.
  4. Confirm WinRM is enabled on the host (Enable-PSRemoting) and reachable on 5985/5986.

Proxmox VE & Nutanix

Proxmox or Nutanix shows a certificate error.

  1. Both commonly use self-signed certificates — add --proxmox-insecure or --nutanix-insecure.
  2. Proxmox accepts either an API token (--proxmox-token user@realm!id=secret) or username/password.
  3. Nutanix Prism Element listens on port 9440 by default.

Terraform

Terraform shows "Not Connected".

  1. Local state: ./kollect --inventory terraform --terraform-state ./terraform.tfstate
  2. Remote S3: ./kollect --inventory terraform --terraform-s3 mybucket/prod.tfstate --terraform-s3-region us-east-1

Vault

Vault shows "Not Connected".

  1. Test health: curl -k https://vault.example.com:8200/v1/sys/health
  2. Provide address and token via env or flags:
    export VAULT_ADDR="https://vault.example.com:8200"
    export VAULT_TOKEN="s.abc123..."
    ./kollect --inventory vault

Port 8080 already in use

Error: "bind: address already in use".

  1. Find the process: lsof -i :8080
  2. Or simply run Kollect on another port:
    ./kollect --browser --port 9090
    # or: KOLLECT_PORT=9090 ./kollect --browser

Running a terminal instance and an MCP instance side by side? Give them different ports the same way.

Network & connectivity

Behind a corporate proxy

export HTTP_PROXY=http://proxy.company.com:8080
export HTTPS_PROXY=http://proxy.company.com:8080
export NO_PROXY=localhost,127.0.0.1

Test connectivity to cloud APIs

curl -I https://ec2.amazonaws.com
curl -I https://management.azure.com
curl -I https://compute.googleapis.com

FAQ

Does Kollect store my data or credentials?

No. Kollect never persists credentials, and inventory data is held in memory only — it is not written to disk unless you use --output or export from the browser.

Is Kollect read-only?

Yes. Kollect only performs read operations. Use least-privilege, read-only accounts.

Can I run multiple instances?

Yes — give each one a different port with --port (or KOLLECT_PORT), and be mindful of cloud-provider API rate limits.

How do I collect diagnostic info for a bug report?

uname -a
./kollect --help          # confirm the flags available in your build
curl http://localhost:8080/api/check-credentials

When reporting an issue, include your OS, the exact command you ran, the terminal output (with credentials/IPs redacted), and steps to reproduce.

Community support