private void startMetrics()
	{
		try
		{
			Metrics metrics = new Metrics(this);
			
			Metrics.Graph componentLineGraph = metrics.createGraph("Components Used");
			for (final Component c : Component.values())
			{
				String name = c.getFancyName();
				
				// Line graph comparing component usage together
				componentLineGraph.addPlotter(new Metrics.Plotter(name)
				{
					@Override
					public int getValue()
					{
						return c.i().isEnabled() ? 1 : 0;
					}
				});
				
				
				// Pie graph of the component Enabled/Disabled
				Metrics.Graph componentStatsGraph = metrics.createGraph(name + " Stats");
				componentStatsGraph.addPlotter(new Metrics.Plotter("Enabled")
				{
					@Override
					public int getValue()
					{
						return c.i().isEnabled() ? 1 : 0;
					}
				});
				componentStatsGraph.addPlotter(new Metrics.Plotter("Disabled")
				{
					@Override
					public int getValue()
					{
						return c.i().isEnabled() ? 0 : 1;
					}
				});
				
			}
			
			// Done :)
			metrics.start();
		}
		catch (IOException e)
		{
			getLogger().info("Failed to start metrics gathering..  :(");
		}
	}