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 default
channel.
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-"
}
}
}