Install the vFunction OpenTelemetry Collector for a single vFunction App



Prerequisites

  1. Install the vFunction Server
  2. Create the Distributed Application in the vFunction Server UI
  1. Log into the vFunction Server UI after the installation has completed
  2. Automatically, the UI should launch the Create Application dialog box. If the dialog box is not automatically launched, click the dropdown arrow in the top-left corner and select Add Application

Add Application

  1. Toggle the Application Type to Distributed
  2. Add an Application Name
  3. Click the blue Create button

Add Application

  1. A dialog box will display with Installation Instructions
  2. Find the OTEL_EXPORTER_OTLP_HEADERS Environment Variable within the dialog box. It will include the X-VF-APP and an Application UUID. This Application UUID is needed during the Collector configuration

Add Application


Installation Steps

The steps below assume that the OpenTelemetry (OTEL) Collector will be used only by one vFunction Application.

  1. Install the OTEL Collector, following the Operating System-specific documentation from OpenTelemetry

  2. Edit the Collector’s config.yaml based on your distribution and installation method, e.g. /etc/otelcol

  • Find-and-replace $PROTOCOL with http or https depending on how the VF Server was configured
  • Find-and-replace $VF_SERVER_ADDRESS with the URL for login to your organization’s vFunction Server
  • Find-and-replace $VF_APP_UUID with the one provided by the VF Server UI in the Installation Instructions
### Set the Receiver to match the Agent Port
receivers:
  otlp:
    protocols:
      grpc:
        endpoint: 0.0.0.0:4317
      http:
        endpoint: 0.0.0.0:4318
### Configure the Exporter to match the Backend Port
exporters:
  otlphttp/vf:
    endpoint: $PROTOCOL://$VFSERVER/api/unauth/otlp
    headers:
      X-VF-APP: $VF_APP_UUID
    # If the VF Server was configured to use HTTP instead of HTTPS, you will need to enable HTTP via the "tls.insecure: true" Key and Value
    # tls:
    #   insecure: true
### Add the Exporter to the pipeline
service:
  pipelines:
    traces:
      receivers: [otlp]
      exporters: [otlphttp/vf]
  1. Restart the OpenTelemetry Collector Service. For example:
sudo systemctl restart otelcol
  1. Use the Application to initiate traffic for the environment
  2. Start Learning in the vFunction Server UI and continue using the Application

Video Guided Installation