Sub-Metadata Aggregator Function Configuration in Detail

Header Config  Description ValueType Required Field Default (For non-mandatory fields) Link / Details

Syslog

Syslog is used for receiving cef data
address Address to listen for AMI CEF data IPAddress : Port Yes :7000 Binds to :7000 of all available networks
num_handlers Number of Core handlers integer No 0 value 0 will use runtime.NumCPU()
queue_size Number of incoming messages to be queued before processing by the handler integer No 100
handler Handler Type string Yes ami

gtpc

gtpc config is used for
address Address to liste for GTP JSON data IPAddress : Port Yes :8489 Binds to :8489 of all available ip address
num_handler Number of Core handlers integer No 0 value 0 will use runtime.NumCPU()
queue_size Number of incoming messages to be queued before processing by the handler integer No 100
handler Handler Type string Yes gtp

files

Files are used for
dir

directory all data files(AMI CEF) will be written to

string No /usr/share/gigamon/smaf/aggregator/events/
duration

time before files are rotated.

string No 10m

Duration string -

is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300ms", "-1.5h" or "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".

purge:interval:

purge job interval

string

No 10m

ret_period:

retention period of files

string

No 12h

disk_threshold:

disk threshold in percentage

float No 80

logging

zap logging is used for level logging. Refer to the link for more details https://github.com/uber-go/zap
level logging level string No error
console logging in console to be enabled or disabled bool No true
files logging file name string No /usr/share/gigamon/smaf/aggregator/log/smaf.log
file_size

size before log file is rotated

string

No 10mb Valid units are "b", "kb", "mb", "gb"
encoder

encoder type

string No development Valid values 'production' or 'development'

telemetry

The stats to be exported
port

telemetry server port

string No 9000
refresh_interval

telemetry refresh interval

Duration string No 5m

smafreport

Configuration for the SMAF file reporting
format

The final format of file to be generated.

Currently supported formats:

"json"

string No json
duration

The interval in which the final report to be generated.

Duration string No 30m
local_file_dir The temporary workspace which can be used as placeholder for generating the above requested file. string No /usr/share/gigamon/smaf/aggregator/files/
purge_files Boolean value to indicate where the files to be purged after copying to remote server Bool No False
local_purge_dir The location where we ought to purge the files string No /usr/share/gigamon/smaf/aggregator/purged/
zip_purge_file Whether to zip the purging files bool No False

sftp

Configuration details for the SFTP server connection
server The remote sftp server ip ipv4/ipv6 address To be discussed 127.0.0.1
port The port to be used integer To be discussed 22
username Username for the sftp server string To be discussed inverness
passwd Password for the sfpt server string To be discussed inverness
remote_file_dir location where the final files to be copied via sftp string To be discussed /usr/share/gigamon/smaf/aggregator/purged/
zip_remote_file Would the final files to be zipped bool To be discussed False
retry_failed_files Should the failed files be tried to sent again bool To be discussed True

ager

 
COnfiguration Details for the ager process https://golang.org/pkg/time/#ParseDuration
enable
Enable or Disable the Ager bool No false
session_timeout GTP Control session inactivity time after timeout it will be deleted Duration string No 8h

persistence (Backup & Restore)

Configuration details for the Backup & Restore in redis DB

enable

Enable or disable Persistence bool No false
ip redis server ip string No 127.0.0.1
port Redis Server Port Int No 6379
passwd Redis DB password string No ""

property   fields

apn string No disable
dnn disable

imsi

disable
supi disable
imei disable
pei disable
msisdn disable
gpsi disable
rat disable
qci disable
nr5qi disable
ecgi disable
eci disable
eplmnlD disable
ncgi disable
nci disable
nplmnlD disable
tai disable
ulteid disable
dlteid disable
inneripsrc disable
inneripdst disable
protocol disable
nwslicdID disable
interface disable
starttime disable
endtime disable
appname disable

Sample Configs:

Dev Config 1:

Copy
 syslog:
  address: 10.115.74.212:8000
  num_handlers: 1000
  queue_size: 2048
  handler: ami
gtpc:
  address: 10.115.74.212:8001
  num_handlers: 1000
  queue_size: 2048
  handler: gtp
files:
  dir: /usr/share/gigamon/smaf/aggregator/ami/files/
  duration: 10m
  purge:
    interval: 12h
    ret_period: 840h
    disk_threshold: 80
logging:
  level: info
  console: true
  file: /usr/share/gigamon/smaf/aggregator/log/log/
  file_size: 10mb
  encoder: development
telemetry:
  port: "8080"  refresh_interval: 5m
smafreport:
  format: json
  duration: 5m
  local_file_dir: /usr/share/gigamon/smaf/aggregator/files/
  purge_files: true
  local_purge_dir: /usr/share/gigamon/smaf/aggregator/purged/
  zip_purge_file: false
sftp:
  server: 10.115.72.22
  port: 22
  username: gigatest
  passwd: gigatest
  remote_file_dir: /home/gigatest/am/SMAF/FINAL_JSON/
  zip_remote_file: true
ager:
  enable: true
  session_timeout: 8h