Skip to content

Instantly share code, notes, and snippets.

@tsubauaaa
Last active October 19, 2015 00:29
Show Gist options
  • Save tsubauaaa/bfda6e239d38720db52d to your computer and use it in GitHub Desktop.
Save tsubauaaa/bfda6e239d38720db52d to your computer and use it in GitHub Desktop.
zabbix api user macro registration
#! /usr/bin/env ruby
#./user_macro_reg.rb host01 '{$INSTANCEID}' "i-a1b2c3d4"
require "zabbixapi"
unless ARGV.size == 3
puts "Usage: #{$0} [AGENT_HOST_NAME] [USERMACRO_NAME] [USERMACRO_VALUE]"
exit 1
end
#ZABBIX CONFIGURATION
zabbix_url = "http(s)://YOUR_ZABBIX_SERVER_URL/api_jsonrpc.php"
zabbix_id = "YOUR_ZABBIX_USER_ID"
zabbix_pass = "YOUR_ZABBIX_USER_PASSWORD"
#ARGUMENTS
host_name = ARGV[0]
macro_name = ARGV[1]
macro_value = ARGV[2]
#ZABBIX AUTHENTICATION
zbx = ZabbixApi.connect(
:url => zabbix_url ,
:user => zabbix_id ,
:password => zabbix_pass
)
#USERMACRO REGISTRATION
zbx.usermacros.create(
:hostid => zbx.hosts.get_id( :host => host_name ),
:macro => macro_name,
:value => macro_value
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment