Hostname "__ONION_ADDRESS__"
Interval 30

LoadPlugin syslog
<Plugin syslog>
	LogLevel info
</Plugin>

LoadPlugin cpu
LoadPlugin df
LoadPlugin disk
LoadPlugin fhcount
LoadPlugin interface
LoadPlugin java
LoadPlugin load
LoadPlugin memory
LoadPlugin processes
LoadPlugin swap
LoadPlugin write_graphite

<Plugin cpu>
	ReportByCpu true
	ValuesPercentage true
</Plugin>

<Plugin df>
	MountPoint "/"
</Plugin>

<Plugin disk>
	Disk "/[hs]da/"
</Plugin>

<Plugin fhcount>
	ValuesAbsolute false
	ValuesPercentage true
</Plugin>

<Plugin interface>
	Interface "eth0"
</Plugin>

<Plugin java>
	JVMArg "-verbose:jni"
	JVMArg "-Djava.class.path=/usr/share/collectd/java/collectd-api.jar:/usr/share/collectd/java/generic-jmx.jar"

	LoadPlugin "org.collectd.java.GenericJMX"
	<Plugin "GenericJMX">
		# Generic heap/nonheap memory usage.
		<MBean "memory">
			ObjectName "java.lang:type=Memory"
			#InstanceFrom ""
			InstancePrefix "memory"
			
			# Creates four values: committed, init, max, used
			<Value>
				Type "memory"
				#InstancePrefix ""
				#InstanceFrom ""
				Table true
				Attribute "HeapMemoryUsage"
				InstancePrefix "heap-"
			</Value>
			
			# Creates four values: committed, init, max, used
			<Value>
				Type "memory"
				#InstancePrefix ""
				#InstanceFrom ""
				Table true
				Attribute "NonHeapMemoryUsage"
				InstancePrefix "nonheap-"
			</Value>
		</MBean>
		
		# Memory usage by memory pool.
		<MBean "memory_pool">
			ObjectName "java.lang:type=MemoryPool,*"
			InstancePrefix "memory_pool-"
			InstanceFrom "name"
			
			<Value>
				Type "memory"
				#InstancePrefix ""
				#InstanceFrom ""
				Table true
				Attribute "Usage"
			</Value>
		</MBean>

		<Connection>
			ServiceURL "service:jmx:rmi:///jndi/rmi://localhost:6969/jmxrmi"
			Collect "memory_pool"
			Collect "memory"
		</Connection>
		
		# See /usr/share/doc/collectd/examples/GenericJMX.conf
		# for an example config.
	</Plugin>
</Plugin>

#<Plugin load>
#	ReportRelative true
#</Plugin>

#<Plugin memory>
#	ValuesAbsolute true
#	ValuesPercentage false
#</Plugin>

#<Plugin processes>
#	Process "name"
#	ProcessMatch "foobar" "/usr/bin/perl foobar\\.pl.*"
#</Plugin>

#<Plugin swap>
#	ReportByDevice false
#	ReportBytes true
#</Plugin>

<Plugin write_graphite>
	<Node "node">
		Host "127.0.0.1"
		Port "2003"
		Protocol "tcp"
		ReconnectInterval 0
		LogSendErrors false
		Prefix "servers."
		StoreRates true
		AlwaysAppendDS false
		EscapeCharacter "_"
		SeparateInstances false
		PreserveSeparator false
		DropDuplicateFields false
	</Node>
</Plugin>
