Rust & Vector.dev for Observability Collector

Moogsoft: Rust Language Selection for Collector

Role: VP of Engineering

Overview: The initial prototype observability agent for the SaaS product was written in Java and carried a heavy footprint when compared competitively against similar agents in the market. Product wanted to see a lighter weight agent created to make us more competitive. We explored, built prototypes and implemented an initial version in Rust. Later, this was migrated to leverage Vector.dev, a Rust-based telemetry pipeline.

Situation: The initial observability agent (collector) for Moogsoft’s SaaS product was written in Java and had a significant resource footprint compared to competitive agents in the market. This made it less attractive to customers concerned about agent overhead.

Task: To identify and implement a more lightweight and efficient observability agent. This required evaluating different programming languages and frameworks, building prototypes, and managing the transition to a new agent technology.

Action:

  • Researched and evaluated alternative languages and frameworks for the observability agent, focusing on performance and resource efficiency.
  • Led the development of initial prototypes, with Rust being selected as a promising candidate.
  • Implemented an initial version of the collector in Rust.
  • Subsequently, guided the migration of the Rust-based collector to leverage Vector.dev, a high-performance, Rust-based telemetry pipeline.

Tech Stack Used: Java (original agent), Rust, Vector.dev.

Result: Aligning with Rust and selecting Vector.dev as the framework allowed Moogsoft to deliver numerous advanced capabilities for customers and provided them with a reliable platform we were building on. This allowed customers to take on more complex integrations and deployment models to meet their needs for a local installation of our agent.

Context: This technological shift for the collector was crucial for improving the competitiveness of Moogsoft’s SaaS offering. A lightweight, efficient agent reduced customer friction and supported broader adoption, particularly in resource-sensitive environments.

Visuals: UI controls for agents deployed globally: Moogsoft Collector Management UI