ZabbixSender (ZabbixSender v1.1.0) View Source
Zabbix Sender Protocol client
Examples
value = ZabbixSender.Protocol.value("localhost", "some_key", 12.3, :os.system_time(:second))
request = ZabbixSender.Protocol.encode_request([value], :os.system_time(:second))
|> ZabbixSender.Serializer.serialize()
with {:ok, response} <- ZabbixSender.send(request, "localhost", 10051),
{:ok, deserialized} <- ZabbixSender.Serializer.deserialize(response),
{:ok, decoded} <- ZabbixSender.Protocol.decode_response(deserialized)
do
if decoded.failed == 0 do
Logger.info("#{decoded.processed} values processed")
else
Logger.warn("#{decoded.processed} values processed out of #{decoded.total}")
end
end
Link to this section Summary
Functions
Sends binary message to zabbix trapper endpoint and receives response. Returns binary response or an error.
Sends values collection to zabbix trapper endpoint and receives response. Returns deserialized response or an error.
Link to this section Functions
Specs
Sends binary message to zabbix trapper endpoint and receives response. Returns binary response or an error.
Examples
iex> ZabbixSender.send(<<>>, "localhost", 12345)
{:error, :econnrefused}
Specs
send_values([...], pos_integer(), String.t(), integer()) :: {:ok, ZabbixSender.Protocol.response_t()} | {:error, any()}
Sends values collection to zabbix trapper endpoint and receives response. Returns deserialized response or an error.
Examples
iex> ZabbixSender.send_values([%{"key" => "value"}], 123412, "localhost", 12345)
{:error, :econnrefused}