Skip to main content

Ports and nomenclature

This document serves as the authoritative reference for network port assignments and naming conventions within the fluxrig project.

Network port registry​

To prevent conflicts and ensure consistent test automation, the project reserves the following port namespaces:

By default, fluxrig components communicate using the following standard ports:

  • 4222: NATS (Client port)
  • 8222: NATS (Monitoring port)
ComponentDefault (Production)Test (Robot/E2E)Description
Mixer API809018080Control Plane REST/HTTP API
Snake (NATS)422214222Embedded Message Bus (gossip/client)
ISO8583 Gear85838586Standard ISO8583 listener
Bento Gear800018000HTTP/JSON Bridge Gear

IMPORTANT

Robot Framework Overrides: Always use the ${MIXER_PORT} and ${NATS_PORT} variables in Robot suites. The fluxrigLibrary automatically tracks these overrides to ensure telemetry and metrics collection connect to the correct instances.


Nomenclature standards​

Project branding​

  • Formal Name: fluxrig (Always lowercase in text, headings, and filenames).
  • Avoid: Flux, FluxRig (PascalCase), and FLUXRIG (uppercase, except in ENV var names like FLUXRIG_*).

Technical identifiers​

We use the abbreviated flux. prefix for internal system primitives to keep names brief in high-volume streams:

  • NATS Subjects: flux.msg.>, flux.telemetry.>, flux.ctrl.>
  • Log Attributes: flux.type, flux.name, flux.id
  • File Extensions: .flux (e.g., rack.flux for Rack Passports)
  • Data Structures: fluxMsg, FluxID (PascalCase in Go code, camelCase in serialized JSON/CBOR).

Environment variable standards​

All configuration overrides must use the FLUXRIG_ prefix:

  • FLUXRIG_API_PORT
  • FLUXRIG_SNAKE_PORT
  • FLUXRIG_LOG_LEVEL