Kudzu Analytics Gateway

More advanced users or hardware developers can interface directly with our analytics system by sending data directly to our Analytics Gateway.

1. Configure the integration

Before you can use our analytics gateway endpoint you must first enable the integration in your network.

1.1. Open the network settings

Click on the Networks link in the top navigation and select the network you want to add the integration from the side navigation.

Click the Edit button from the top right corner.

1.2. Add an integration

On the Integration Interfaces, click the Add Integration Configuration button.

From the Type Drop-Down select "Kudzu Analytics Gateway".

2.3. Configure your integration

There is no further configuration required.

A random Net ID key will be generated and associated with your network. You can now use this ID to push data that will be automatically associted with your network.

2. Pushing data

There are many different ways you can push data into the Analytics Gateway. We are going to explain the two frequently used ones.

2.1. Using a UDP forwarder inside the gateway

It is quite frequent that clients run their own UDP Packet Forwarder proxy inside of their gateway. This way, they can push analytics data while being agnostic of the back-end server implementation.

Our UDP Packet Forwarder proxy is available for many major CPU architectures. You can find the static binaries in our Github Releases page.

Once you have copied your binary in your gateway filesystem, you can start our broker by configuring the environment like so:

# Configure environment
export PROXY_0_LOCAL="127.0.0.1:1801"
export PROXY_0_REMOTE="<upstream-server>:1801"
export KUDZU_0_ENDPOINT="router.kudzu.gr:8884"
export KUDZU_0_NET_ID="<analytics-network-id>"
# EUI should be inserted in lower case
export KUDZU_0_GATEWAY_ID="eui-<gateway-eui>"

# Start broker
./kudzu-broker

Where:

  • PROXY_0_LOCAL is the local endpoint where it’s going to listen for incoming URP packets. You should point your packet forwarder to send the data here.
  • PROXY_0_REMOTE is the remote endpoint where it’s going to forward the UDP packets. You should point to your server here.
  • KUDZU_0_ENDPOINT configures the location of the Kudzu Analytics Gateway
  • KUDZU_0_NET_ID holds the value of the Net ID from the step 2.3 above
  • KUDZU_0_GATEWAY_ID is your gateway EUI (including the eui- prefix, eg. eui-0011223344556677).
2.2. Programmatically

You can connect directly to our gRPC endpoint and push data. You can refer to our examples in the https://github.com/kudzutechnologies/analytics repository.