public static Map<String, String> getCounters(Job job) {
		Map<String, String> resultMap = new HashMap<String, String>();
		try {
			Counters counters = job.getCounters();
			Collection<String> groupNames = counters.getGroupNames();
			Iterator<String> groupIterator = groupNames.iterator();
			while (groupIterator.hasNext()) {
				String groupName = groupIterator.next();
				CounterGroup group = counters.getGroup(groupName);
				Iterator<Counter> counterIterator = group.iterator();
				while (counterIterator.hasNext()) {
					Counter counter = counterIterator.next();
					logger.info("[" + group.getName() + "] " + counter.getName() + " = " + counter.getValue());
					String realName = HadoopMetrics.getMetricName(group.getName() + "_" + counter.getName());
					if (!StringUtils.isEmpty(realName)) {
						resultMap.put(realName, String.valueOf(counter.getValue()));
					}
				}
			}
		} catch (Exception ex) {
		}
		return resultMap;
	}