Package com.cloudera.flume.reporter

Examples of com.cloudera.flume.reporter.ReportEvent


    EventSink msnk = mock(EventSink.class);
    doNothing().when(msnk).open();
    doNothing().when(msnk).close();
    doNothing().doThrow(new IOException("foo")).doNothing().when(msnk)
        .append(Mockito.<Event> anyObject());
    doReturn(new ReportEvent("blah")).when(msnk).getMetrics();

    // cannot write to the same instance.
    Event e1 = new EventImpl(new byte[0]);
    Event e2 = new EventImpl(new byte[0]);
    Event e3 = new EventImpl(new byte[0]);
View Full Code Here


  @Test
  public void testRollSinkCancel() throws IOException, InterruptedException {
    EventSink fail4eva = mock(EventSink.Base.class);
    final Event e = new EventImpl("foo".getBytes());
    doThrow(new IOException("mock exception")).when(fail4eva).append(e);
    doReturn(new ReportEvent("mock report")).when(fail4eva).getMetrics();
    doReturn("mock name").when(fail4eva).getName();

    // max 5s, backoff initially at 10ms
    BackoffPolicy bop = new CappedExponentialBackoff(10, 5000);
    final EventSink insistent = new InsistentAppendDecorator<EventSink>(
View Full Code Here

   */
  @Test
  public void testDFOSubsinkCancel() throws IOException, InterruptedException {
    EventSink fail4eva = mock(EventSink.Base.class);
    doThrow(new IOException("mock exception")).when(fail4eva).open();
    doReturn(new ReportEvent("stub")).when(fail4eva).getMetrics();

    // max 5s, backoff initially at 10ms
    BackoffPolicy bop = new CappedExponentialBackoff(10, 5000);

    final InsistentOpenDecorator<EventSink> insistent = new InsistentOpenDecorator<EventSink>(
View Full Code Here

    this.name = name + "system-info";
  }

  @Override
  public ReportEvent getMetrics() {
    ReportEvent rpt = new ReportEvent(getName());

    // os
    OperatingSystemMXBean os = ManagementFactory.getOperatingSystemMXBean();
    rpt.setStringMetric("os.arch", os.getArch());
    rpt.setStringMetric("os.name", os.getName());
    rpt.setStringMetric("os.version", os.getVersion());
    rpt.setLongMetric("os.cpus", os.getAvailableProcessors());
    // load in last minute
    rpt.setDoubleMetric("os.load", os.getSystemLoadAverage());
    rpt.setStringMetric("hostname", NetUtils.localhost());

    // os (not in java)
    // iotop
    // swap mem
    // du / df
View Full Code Here

    this.name = name + "jvm-Info";
  }

  @Override
  public ReportEvent getMetrics() {
    ReportEvent rpt = new ReportEvent(getName());

    // TODO (jon) class loader

    // TODO (jon) compilation

    // TODO (jon) gc

    // TODO (jon) mem man

    // mem
    MemoryMXBean mem = ManagementFactory.getMemoryMXBean();
    MemoryUsage heap = mem.getHeapMemoryUsage();
    rpt.setLongMetric("mem.heap.used", heap.getUsed());
    rpt.setLongMetric("mem.heap.init", heap.getInit());
    rpt.setLongMetric("mem.heap.max", heap.getMax());
    rpt.setLongMetric("mem.heap.committed", heap.getCommitted());

    MemoryUsage notheap = mem.getNonHeapMemoryUsage();
    rpt.setLongMetric("mem.other.used", notheap.getUsed());
    rpt.setLongMetric("mem.other.init", notheap.getInit());
    rpt.setLongMetric("mem.other.max", notheap.getMax());
    rpt.setLongMetric("mem.other.committed", notheap.getCommitted());

    // TODO (jon) process (not in java)
    // pid
    // user / group / effective group id.
    // ulimit / open handles (lsof)

    // runtime (subset)
    RuntimeMXBean rt = ManagementFactory.getRuntimeMXBean();
    rpt.setStringMetric("rt.vmname", rt.getVmName());
    rpt.setStringMetric("rt.vmvendor", rt.getVmVendor());
    rpt.setStringMetric("rt.vmversion", rt.getVmVersion());
    // TODO (jon) add date type
    rpt.setStringMetric("rt.starttime", new Date(rt.getStartTime()).toString());
    // current working dir.

    // TODO (jon) threads

    return rpt;
View Full Code Here

    LOG.info("waled failchain: " + spec);
    String node = NetUtils.localhost();
    EventSink snk = FlumeBuilder.buildSink(new LogicalNodeContext(node, node),
        spec);
    ReportEvent rpt = ReportUtil.getFlattenedReport(snk);
    LOG.info(ReportUtil.toJSONObject(rpt).toString());

    // just check a sample of the values:
    assertEquals(0, (long) rpt.getLongMetric("naiveWal.loggedQ"));
    assertEquals("foo1",
        rpt.getStringMetric("drainSink.StubbornAppend.InsistentOpen."
            + "FailoverChainSink.primary.foo1.name"));
    assertEquals("foo2",
        rpt.getStringMetric("drainSink.StubbornAppend.InsistentOpen."
            + "FailoverChainSink.backup.BackoffFailover.primary.foo2.name"));
    assertEquals("foo3",
        rpt.getStringMetric("drainSink.StubbornAppend.InsistentOpen."
            + "FailoverChainSink.backup.BackoffFailover.backup.foo3.name"));
  }
View Full Code Here

    ReportManager.get().clear();
    String spec = AgentFailChainSink.genBestEffortChain("counter(\"foo1\")",
        "counter(\"foo2\")", "counter(\"foo3\")");
    LOG.info("best effort failchain: " + spec);
    EventSink snk = FlumeBuilder.buildSink(new Context(), spec);
    ReportEvent rpt = ReportUtil.getFlattenedReport(snk);
    LOG.info(ReportUtil.toJSONObject(rpt).toString());

    // just check a sample of the values:
    assertEquals(
        "foo1",
        rpt.getStringMetric("primary.LazyOpenDecorator.StubbornAppend.foo1.name"));
    assertEquals("foo2",
        rpt.getStringMetric("backup.BackoffFailover.primary.LazyOpenDecorator."
            + "StubbornAppend.foo2.name"));
    assertEquals("foo3",
        rpt.getStringMetric("backup.BackoffFailover.backup.LazyOpenDecorator."
            + "StubbornAppend.foo3.name"));
  }
View Full Code Here

        "counter(\"foo2\")", "counter(\"foo3\")");
    LOG.info("disk failover failchain: " + spec);
    String node = NetUtils.localhost();
    EventSink snk = FlumeBuilder.buildSink(new LogicalNodeContext(node, node),
        spec);
    ReportEvent rpt = ReportUtil.getFlattenedReport(snk);
    LOG.info(ReportUtil.toJSONObject(rpt).toString());

    // just check a sample of the values:
    assertEquals(
        "foo1",
        rpt.getStringMetric("backup.DiskFailover.LazyOpenDecorator."
            + "InsistentAppend.StubbornAppend.InsistentOpen."
            + "FailoverChainSink.primary.LazyOpenDecorator.StubbornAppend.foo1.name"));

    assertEquals(
        "foo2",
        rpt.getStringMetric("backup.DiskFailover.LazyOpenDecorator."
            + "InsistentAppend.StubbornAppend.InsistentOpen."
            + "FailoverChainSink.backup.BackoffFailover.primary.LazyOpenDecorator."
            + "StubbornAppend.foo2.name"));
    assertEquals(
        "foo3",
        rpt.getStringMetric("backup.DiskFailover.LazyOpenDecorator."
            + "InsistentAppend.StubbornAppend.InsistentOpen."
            + "FailoverChainSink.backup.BackoffFailover.backup.LazyOpenDecorator."
            + "StubbornAppend.foo3.name"));
  }
View Full Code Here

    c1Src.next();
    c1Src.next();
    c1Src.next();
    c1Src.next();
    c1Src.close();
    ReportEvent rpt = ReportUtil.getFlattenedReport(snk);
    LOG.info(rpt.toString());

    String written = "backup.DiskFailover.NaiveDiskFailover.writingEvts";
    assertEquals(4, (long) rpt.getLongMetric(written));
    // yay. all four events written to dfo log

    String primary = "backup.DiskFailover."
        + "LazyOpenDecorator.InsistentAppend.StubbornAppend."
        + "InsistentOpen.FailoverChainSink.sentPrimary";
    assertEquals(4, (long) rpt.getLongMetric(primary));
    // yay all four go through to the path we wanted. (the primary after the
    // disk failover)

    // data from DFO log was sent.
    assertEquals(2 + 4,
View Full Code Here

    return "CumulativeCappedExpBackoff";
  }

  @Override
  public ReportEvent getMetrics() {
    ReportEvent rpt = super.getMetrics();
    rpt.setLongMetric(A_CUMULATIVECAP, cumulativeCap);
    return rpt;
  }
View Full Code Here

TOP

Related Classes of com.cloudera.flume.reporter.ReportEvent

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.