Sink Log
Netify Sink Log Plugin
Introduction
The Netify Sink Log plugin provides a mechanism to write Netify objects directly to the host filesystem.
License
The Netify Sink Log Plugin is open-source software. It can be dual-licensed under the GPLv3 or a commercial license. Please contact us for details.
Installation
Netify plugins are packaged in the same workflow as the agent and can usually be installed using a similar syntax that was implemented during the installation of the Netify agent. Exceptions to this rule occur when the plugin requires a Software License Agreement or if an upgrade or downgrade to a different version of the plugin is required.
Alma Linux
Alma Linux 9
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
yum update
yum install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/almalinux/9/stable/x86_64/netify-sink-log_1.0.33-1.os9.x86_64.rpm
yum install ./netify-sink-log_1.0.33-1.os9.x86_64.rpm
Alma Linux 8
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
yum update
yum install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/almalinux/8/stable/x86_64/netify-sink-log_1.0.33-1.os8.x86_64.rpm
yum install ./netify-sink-log_1.0.33-1.os8.x86_64.rpm
Debian
Debian 13 (Bookworm)
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
apt update
apt install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/debian/12/amd64/netify-sink-log_1.0.33-1_amd64.deb
apt install ./netify-sink-log_1.0.33-1_amd64.deb
Debian 11 (Bullseye)
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
apt update
apt install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/debian/11/amd64/netify-sink-log_1.0.33-1_amd64.deb
apt install ./netify-sink-log_1.0.33-1_amd64.deb
Debian 10 (Buster)
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
apt update
apt install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/debian/10/amd64/netify-sink-log_1.0.33-1_amd64.deb
apt install ./netify-sink-log_1.0.33-1_amd64.deb
OpenWRT
OpenWRT 23.05
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
opkg update
opkg install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
pkg add https://download.netify.ai/5/openwrt/23.05/x86/netify-sink-log_1.0.33-1_x86_64.ipk
OpenWRT 22.03
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
opkg update
opkg install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
pkg add https://download.netify.ai/5/openwrt/22.03/x86/netify-sink-log_1.0.33-1_x86_64.ipk
OpenWRT 21.02
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
opkg update
opkg install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
pkg add https://download.netify.ai/5/openwrt/21.02/x86/netify-sink-log_1.0.33-1_x86_64.ipk
OpenWRT 19.07
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
opkg update
opkg install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
pkg add https://download.netify.ai/5/openwrt/19.07/x86/netify-sink-log_1.0.33-1_x86_64.ipk
OPNsense
OPNsense 24.1 - Savvy Shark
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
pkg update
pkg install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
pkg add https://download.netify.ai/5/freebsd/13.2/amd64/netify-sink-log_1.0.33,1.pkg
OPNsense 23.7 - Restless Roadrunner
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
pkg update
pkg install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
pkg add https://download.netify.ai/5/freebsd/13.2/amd64/netify-sink-log_1.0.33,1.pkg
pfSense
pfSense Plus 23.x
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
pkg update
pkg install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
pkg add https://download.netify.ai/5/freebsd/13.2/amd64/netify-sink-log_1.0.33,1.pkg
pfSense CE 2.7.x
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
pkg update
pkg install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
pkg add https://download.netify.ai/5/freebsd/13.2/amd64/netify-sink-log_1.0.33,1.pkg
Rocky Linux
Rocky Linux 9
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
yum update
yum install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/rockylinux/9/stable/x86_64/netify-sink-log_1.0.33-1.os9.x86_64.rpm
yum install ./netify-sink-log_1.0.33-1.os9.x86_64.rpm
Rocky Linux 8
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
yum update
yum install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/rockylinux/8/stable/x86_64/netify-sink-log_1.0.33-1.os8.x86_64.rpm
yum install ./netify-sink-log_1.0.33-1.os8.x86_64.rpm
openSUSE Linux
openSUSE Leap 15.5
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
zypper update
zypper install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/opensuse/15.5/stable/x86_64/netify-sink-log_1.0.33-1.os15.5.x86_64.rpm
zypper install ./netify-sink-log_1.0.33-1.os15.5.x86_64.rpm
Ubuntu
Ubuntu 24.04 - Noble
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
apt update
apt install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/ubuntu/noble/binary-amd64/netify-sink-log_1.0.33-1_amd64.deb
apt install ./netify-sink-log_1.0.33-1_amd64.deb
Ubuntu 22.04 - Jammy
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
apt update
apt install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/ubuntu/jammy/binary-amd64/netify-sink-log_1.0.33-1_amd64.deb
apt install ./netify-sink-log_1.0.33-1_amd64.deb
Ubuntu 20.04 - Focal
Assuming you have installed the Netify repository during the Netify Agent installation, you can install the Netify Sink Log by running:
apt update
apt install netify-sink-log
To install a package manually, you can find the version you wish to install from our download servers and install it as you would any other package. For example:
cd /tmp/
wget https://download.netify.ai/5/ubuntu/focal/binary-amd64/netify-sink-log_1.0.33-1_amd64.deb
apt install ./netify-sink-log_1.0.33-1_amd64.deb
Configuration
Plugin Loader Configuration
All plugins are disabled by default, and the Netify Sink Log plugin is no different. To enable:
netifyd --enable-plugin sink-log
Alternatively, you can edit /etc/netifyd/plugins.d/10-netify-sink-log.conf and set enable to yes.
# Netify Agent Log Sink Plugin Loader
# Copyright (C) 2023 eGloo Incorporated
#
# This is free software, licensed under the GNU General Public License v3.
#
##############################################################################
[sink-log]
enable = yes
plugin_library = /usr/lib64/libnetify-sink-log.so.0.0.0
conf_filename = ${path_state_persistent}/netify-sink-log.json
# vim: set ft=dosini :
Plugin Configuration
Once the plugin has been enabled, it can be configured using the defined JSON configuration file specified in the plugin loader configuration. Let's look at a configuration sample to review the syntax and parts of the file.
{
"overwrite": false,
"log_path": "/tmp",
"channels": {
"default": {
"overwrite": true,
"log_path": "/tmp",
"log_name": "netify-log-"
}
}
}
| Property | overwrite |
|---|---|
| Description | Global setting that will determine if an existing filename in the path already exists. If overwrite is set to false, and an existing file exists, it will not overwrite the data. |
| Type | boolean |
| Options | true, false |
| Default | false |
| Property | log_path |
|---|---|
| Description | Global setting that sets the default folder path. |
| Type | string |
| Default | /tmp |
| Property | channels |
|---|---|
| Description | An object array that defines one or more channels to be available to the core processors. |
| Type | object |
| Options | Depends on local configuration (see Channel Objects section below) |
Channel Objects
The Log Sink's channel object list determines which instances to log to. In the example above, we are defining only one, the defaultchannel.
Let's take a closer look at the configuration.
| Property | overwrite |
|---|---|
| Description | See global section above. |
| Type | boolean |
| Property | log_path |
|---|---|
| Description | See global section above. |
| Type | string |
| Property | log_name |
|---|---|
| Description | A string that will be prepended to the filename that will include timestamps to denote the creation time. |
| Type | string |
Examples
Create a default channel to send data coming from processors (ex. core, aggregate, device discovery etc.) to the /tmp folder.
{
"overwrite": false,
"log_path": "/tmp",
"channels": {
"default": {
"overwrite": true,
"log_path": "/tmp",
"log_name": "netify-log-"
}
}
}