52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
# File 'lib/fluent/plugin/in_snmp.rb', line 52
def configure(conf)
super
raise ConfigError, "snmp: 'tag' is required param" if @tag.empty?
raise ConfigError, "snmp: 'polling_type' parameter is required on snmp input" if @polling_type.empty?
@mib = @mib.split(',').map{|str| str.strip}
raise ConfigError, "snmp: 'mib' parameter is required on snmp input" if @mib.empty?
@mib_modules = @mib_modules.split(',').map{|str| str.strip} unless @mib_modules.nil?
raise ConfigError, "snmp: 'mib_modules' parameter is required on snmp input" if !@mib_modules.nil? && @mib_modules.empty?
@nodes = @nodes.split(',').map{|str| str.strip} unless @nodes.nil?
raise ConfigError, "snmp: 'nodes' parameter is required on snmp input" if !@nodes.nil? && @nodes.empty?
@polling_time = @polling_time.split(',').map{|str| str.strip} unless @polling_time.nil?
raise ConfigError, "snmp: 'polling_time' parameter is required on snmp input" if !@polling_time.nil? && @polling_time.empty?
@version = @version == "1" ? :SNMPv1 : :SNMPv2c
@snmp_init_params = {
:host => @host, :port => @port,
:trap_port => @trap_port,
:community => @community,
:write_community => @write_community,
:version => @version,
:timeout => @timeout,
:retries => @retries,
:transport => @transport,
:max_recv_bytes => @max_recv_bytes,
:mib_dir => @mib_dir,
:mib_modules => @mib_modules,
:use_IPv6 => @use_IPv6
}
unless @out_executor.nil?
$log.info "load snmp out executor #{out_executor}"
@out_exec = lambda do |manager|
load @out_executor
opts = {
:tag => @tag,
:mib => @mib,
:mib_modules => @mib_modules,
:nodes => @nodes,
:conf => conf
}
Fluent::SnmpInput.new.out_exec(manager, opts)
end
end
end
|