public void checkException(Exception ex, String... tags) { Throwable th = ex; while (th != null && !(th instanceof KeeperException)) { th = th.getCause(); } if (th == null) { return; } final KeeperException k = (KeeperException) th; final String message = exceptionMap.get(k.getClass()); if (message == null) { return; } final List<String> tagList = Lists.newArrayList("zookeeper", "error", message); tagList.addAll(Lists.newArrayList(tags)); metrics.zookeeperTransientError(); }
public void connectionStateChanged(final ConnectionState newState) { metrics.connectionStateChanged(newState); }
public <T> T time(final String tag, final String name, ZooKeeperCallable<T> callable) throws KeeperException { final long startTime = clock.getTick(); try { return callable.call(); } catch (KeeperException e) { checkException(e, tag, name); throw e; } catch (Exception e) { Throwables.throwIfUnchecked(e); throw new RuntimeException(e); } finally { metrics.updateTimer(name, clock.getTick() - startTime, TimeUnit.NANOSECONDS); } }
public void checkException(Exception e, String... tags) { Throwable t = e; while (t != null && !(t instanceof KeeperException)) { t = t.getCause(); } if (t == null) { return; } final KeeperException k = (KeeperException) t; final String message = exceptionMap.get(k.getClass()); if (message == null) { return; } final List<String> tagList = Lists.newArrayList("zookeeper", "error", message); tagList.addAll(Lists.newArrayList(tags)); riemannFacade.event() .tags(tagList) .send(); metrics.zookeeperTransientError(); }