private LedgerHandleCache(BookKeeperClient bkc, String digestpw, StatsLogger statsLogger) { this.bkc = bkc; this.digestpw = digestpw; // Stats openStats = statsLogger.getOpStatsLogger("open_ledger"); openNoRecoveryStats = statsLogger.getOpStatsLogger("open_ledger_no_recovery"); }
private ChainedRequestLimiter(ImmutableList<RequestLimiter<Request>> limiters, StatsLogger statsLogger) { this.limiters = limiters; this.applyTime = statsLogger.getOpStatsLogger("apply"); }
public OpStatsLogger requestLatencyStat(String opName) { return requestStatsLogger.getOpStatsLogger(opName); }
@Override public OpStatsLogger getOpStatsLogger(final String statName) { final OpStatsLogger firstLogger = first.getOpStatsLogger(statName); final OpStatsLogger secondLogger = second.getOpStatsLogger(statName); return new OpStatsLogger() { @Override public void registerFailedEvent(long l) { firstLogger.registerFailedEvent(l); secondLogger.registerFailedEvent(l); } @Override public void registerSuccessfulEvent(long l) { firstLogger.registerSuccessfulEvent(l); secondLogger.registerSuccessfulEvent(l); } @Override public OpStatsData toOpStatsData() { // Eventually consistent. return firstLogger.toOpStatsData(); } @Override public void clear() { firstLogger.clear(); secondLogger.clear(); } }; }
/** * Create a future pool with stats exposed. * * @param futurePool underlying future pool to execute futures * @param statsLogger stats logger to receive exposed stats * @param traceTaskExecution flag to enable/disable exposing stats about task execution * @param traceTaskExecutionWarnTimeUs flag to enable/disable logging slow tasks * whose execution time is above this value */ public MonitoredFuturePool(FuturePool futurePool, StatsLogger statsLogger, boolean traceTaskExecution, long traceTaskExecutionWarnTimeUs) { this.futurePool = futurePool; this.traceTaskExecution = traceTaskExecution; this.traceTaskExecutionWarnTimeUs = traceTaskExecutionWarnTimeUs; this.statsLogger = statsLogger; this.taskPendingTime = statsLogger.getOpStatsLogger("task_pending_time"); this.taskExecutionTime = statsLogger.getOpStatsLogger("task_execution_time"); this.taskEnqueueTime = statsLogger.getOpStatsLogger("task_enqueue_time"); this.taskPendingCounter = statsLogger.getCounter("tasks_pending"); }
public StatsFilter(StatsLogger stats) { this.stats = stats; this.outstandingAsync = stats.getCounter("outstandingAsync"); this.serviceExec = stats.getOpStatsLogger("serviceExec"); } }
public OpStatsLogger streamRequestLatencyStat(String streamName, String opName) { return streamRequestStatsLogger(streamName).getOpStatsLogger(opName); }
public ZKDistributedLock( OrderedScheduler lockStateExecutor, SessionLockFactory lockFactory, String lockPath, long lockTimeout, StatsLogger statsLogger) { this.lockStateExecutor = lockStateExecutor; this.lockPath = lockPath; this.lockTimeout = lockTimeout; this.lockFactory = lockFactory; lockStatsLogger = statsLogger.scope("lock"); acquireStats = lockStatsLogger.getOpStatsLogger("acquire"); reacquireStats = lockStatsLogger.getOpStatsLogger("reacquire"); internalTryRetries = lockStatsLogger.getCounter("internalTryRetries"); }
protected static OpStatsLogger requestStat(StatsLogger statsLogger, String opName) { return requestLogger(statsLogger).getOpStatsLogger(opName); }
public ReadAheadCache(String streamName, StatsLogger statsLogger, AlertStatsLogger alertStatsLogger, AsyncNotification notification, int maxCachedRecords, boolean deserializeRecordSet, boolean traceDeliveryLatencyEnabled, long deliveryLatencyWarnThresholdMillis, Ticker ticker) { this.streamName = streamName; this.maxCachedRecords = maxCachedRecords; this.notification = notification; this.deserializeRecordSet = deserializeRecordSet; // create the readahead queue readAheadRecords = new LinkedBlockingQueue<LogRecordWithDLSN>(); // start the idle reader detection lastEntryProcessTime = Stopwatch.createStarted(ticker); // Flags to control delivery latency tracing this.traceDeliveryLatencyEnabled = traceDeliveryLatencyEnabled; this.deliveryLatencyWarnThresholdMillis = deliveryLatencyWarnThresholdMillis; // Stats StatsLogger readAheadStatsLogger = statsLogger.scope("readahead"); this.statsLogger = readAheadStatsLogger; this.alertStatsLogger = alertStatsLogger; this.readAheadDeliveryLatencyStat = readAheadStatsLogger.getOpStatsLogger("delivery_latency"); this.negativeReadAheadDeliveryLatencyStat = readAheadStatsLogger.getOpStatsLogger("negative_delivery_latency"); }
public EnvelopedEntry(byte version, StatsLogger statsLogger) throws InvalidEnvelopedEntryException { Preconditions.checkNotNull(statsLogger); if (version < LOWEST_SUPPORTED_VERSION || version > HIGHEST_SUPPORTED_VERSION) { throw new InvalidEnvelopedEntryException("Invalid enveloped entry version " + version + ", expected to be in [ " + LOWEST_SUPPORTED_VERSION + " ~ " + HIGHEST_SUPPORTED_VERSION + " ]"); } this.version = version; this.compressionStat = statsLogger.getOpStatsLogger("compression_time"); this.decompressionStat = statsLogger.getOpStatsLogger("decompression_time"); this.compressedEntryBytes = statsLogger.getCounter("compressed_bytes"); this.decompressedEntryBytes = statsLogger.getCounter("decompressed_bytes"); }
BKAsyncLogWriter(DistributedLogConfiguration conf, DynamicDistributedLogConfiguration dynConf, BKDistributedLogManager bkdlm, BKLogWriteHandler writeHandler, /** log writer owns the handler **/ FeatureProvider featureProvider, StatsLogger dlmStatsLogger) { super(conf, dynConf, bkdlm); this.writeHandler = writeHandler; this.streamFailFast = conf.getFailFastOnStreamNotReady(); this.disableRollOnSegmentError = conf.getDisableRollingOnLogSegmentError(); // features disableLogSegmentRollingFeature = featureProvider.getFeature(CoreFeatureKeys.DISABLE_LOGSEGMENT_ROLLING.name().toLowerCase()); // stats this.statsLogger = dlmStatsLogger.scope("log_writer"); this.writeOpStatsLogger = statsLogger.getOpStatsLogger("write"); this.markEndOfStreamOpStatsLogger = statsLogger.getOpStatsLogger("mark_end_of_stream"); this.bulkWriteOpStatsLogger = statsLogger.getOpStatsLogger("bulk_write"); this.getWriterOpStatsLogger = statsLogger.getOpStatsLogger("get_writer"); this.pendingRequestDispatch = statsLogger.getCounter("pending_request_dispatch"); }
public SimplePermitLimiter(boolean darkmode, int permitsMax, StatsLogger statsLogger, boolean singleton, Feature disableWriteLimitFeature) { this.permits = new AtomicInteger(0); this.permitsMax = permitsMax; this.darkmode = darkmode; this.disableWriteLimitFeature = disableWriteLimitFeature; // stats if (singleton) { statsLogger.registerGauge("num_permits", new Gauge<Number>() { @Override public Number getDefaultValue() { return 0; } @Override public Number getSample() { return permits.get(); } }); } acquireFailureCounter = statsLogger.getCounter("acquireFailure"); permitsMetric = statsLogger.getOpStatsLogger("permits"); }
this.statsReceiver = statsReceiver; this.statsLogger = statsLogger; this.requestStat = this.statsLogger.getOpStatsLogger("requests"); this.exceptionsLogger = statsLogger.scope("exceptions"); this.dlErrorCodeLogger = statsLogger.scope("dl_error_code");
forceGetListStat = segmentsLogger.getOpStatsLogger("force_get_list"); getListStat = segmentsLogger.getOpStatsLogger("get_list"); getFilteredListStat = segmentsLogger.getOpStatsLogger("get_filtered_list"); getFullListStat = segmentsLogger.getOpStatsLogger("get_full_list"); getInprogressSegmentStat = segmentsLogger.getOpStatsLogger("get_inprogress_segment"); getCompletedSegmentStat = segmentsLogger.getOpStatsLogger("get_completed_segment"); negativeGetInprogressSegmentStat = segmentsLogger.getOpStatsLogger("negative_get_inprogress_segment"); negativeGetCompletedSegmentStat = segmentsLogger.getOpStatsLogger("negative_get_completed_segment"); recoverLastEntryStats = segmentsLogger.getOpStatsLogger("recover_last_entry"); recoverScannedEntriesStats = segmentsLogger.getOpStatsLogger("recover_scanned_entries");
this.traceTaskExecution = traceTaskExecution; this.taskPendingStats = statsLogger.getOpStatsLogger("task_pending_time"); this.taskExecutionStats = statsLogger.getOpStatsLogger("task_execution_time");
this.messageSizeBytes = messageSizeBytes; this.statsLogger = statsLogger; this.requestStat = this.statsLogger.getOpStatsLogger("requests"); this.executorService = Executors.newCachedThreadPool(); this.rescueService = Executors.newSingleThreadScheduledExecutor();
this.lockOpTimeout = lockOpTimeout; this.tryStats = statsLogger.getOpStatsLogger("tryAcquire"); this.tryTimeouts = statsLogger.getCounter("tryTimeouts"); this.unlockStats = statsLogger.getOpStatsLogger("unlock");
futureSetLatency = asyncReaderStatsLogger.getOpStatsLogger("future_set"); scheduleLatency = asyncReaderStatsLogger.getOpStatsLogger("schedule"); backgroundReaderRunTime = asyncReaderStatsLogger.getOpStatsLogger("background_read"); readNextExecTime = asyncReaderStatsLogger.getOpStatsLogger("read_next_exec"); timeBetweenReadNexts = asyncReaderStatsLogger.getOpStatsLogger("time_between_read_next"); delayUntilPromiseSatisfied = asyncReaderStatsLogger.getOpStatsLogger("delay_until_promise_satisfied"); idleReaderError = asyncReaderStatsLogger.getCounter("idle_reader_error"); idleReaderCheckCount = asyncReaderStatsLogger.getCounter("idle_reader_check_total");
this.serviceTimeout = streamOpStats.baseCounter("serviceTimeout"); StatsLogger streamsStatsLogger = streamOpStats.baseScope("streams"); this.streamAcquireStat = streamsStatsLogger.getOpStatsLogger("acquire"); this.pendingOpsCounter = streamOpStats.baseCounter("pending_ops"); this.unexpectedExceptions = streamOpStats.baseCounter("unexpected_exceptions");