liveBook · Manning

Native executable

As explained in Logs and Telemetry

A native executable is a compiled program produced for a specific operating-system and hardware platform and run directly by that platform.

A native executable is a precompiled binary that runs directly on a target operating system and hardware platform. Removing an interpreter or virtual machine reduces startup and memory overhead, which suits compact agents that must start quickly and use limited CPU and memory. section 1.3.1 section 3.2.1

Direct execution also makes platform compatibility a deployment concern. A binary depends on libraries that can communicate with its OS and hardware; unsupported combinations can disable features or prevent a usable build. Apple silicon and macOS are highlighted as common cases. When no suitable binary exists, options include developing a solution, using a VM or chipset emulator such as QEMU, or running elsewhere through a cloud provider. section 3.2.1

Native binaries support operational goals in several ways:

  • Start rapidly and minimize interpreter-related CPU and memory overhead in containerized and Kubernetes workloads. section 1.3.1
  • Collect OS resource data at a low refresh rate to verify capacity and avoid inefficient swap use. section 3.2.1
  • Package specialized Go-based extensions as native binaries without exposing proprietary implementation details. section 9.5.1
  • Retain native-binary performance while using Go runtime memory management and C bindings for integration. section 9.5.1

Run basic OS monitoring

Configure disk, CPU, memory, and network-interface inputs with five-second intervals and send matching records to standard output. Running `fluent-bit -c chapter3/fluentbit/os-monitoring-basic.conf` produces resource events that can be formatted with `jq`; CPU output includes total, user-process, and system-process utilization. section 3.2.1

Listing 3.1 Performing basic OS monitoring
[INPUT]
  name disk           #1
  interval_sec 5
  tag book_vm_disk

[INPUT]
  name cpu          #2
  interval_sec 5
  tag book_vm_cpu

[INPUT]
  name mem         #3
  interval_sec 5
  tag book_vm_memory

[INPUT]
  name netif          #4
  interval_sec 5
  #interface eth0     #5
  tag book_vm_network

[OUTPUT]
  name stdout
  match *        #6

This configuration shows native-agent inputs for disk, CPU, memory, and network monitoring, each tagged for routing to standard output. section 3.2.1

How Logs and Telemetry covers it

How deep it goes
Explains runtime and platform trade-offs, then applies binaries through OS-monitoring configuration rather than build internals.
Examples
Demonstrates Fluent Bit disk, CPU, memory, and network monitoring with five-second input intervals and stdout output.
What you can do after
Evaluate/understand native-binary efficiency, compatibility risks, and practical platform workarounds.
How it connects
Connects native executables to Fluent Bit, containers, Kubernetes, virtual machines, Go, C, and QEMU.

Also explained in

Compare how 4 books explain native executable →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Logs and Telemetry. The section links point to the parts of the book it draws on.