Beispiel #1
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @VisibleForTesting void monitor() throws InterruptedException
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
        internal virtual void Monitor()
        {
            GcStats lastGcStats    = GetGcStats();
            long    nextCheckPoint = nanoTime() + _measurementDurationNs;

            while (!Stopped)
            {
                NANOSECONDS.sleep(_measurementDurationNs);
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final long now = nanoTime();
                long now = nanoTime();
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final long pauseNs = max(0L, now - nextCheckPoint);
                long pauseNs = max(0L, now - nextCheckPoint);
                nextCheckPoint = now + _measurementDurationNs;

//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final GcStats gcStats = getGcStats();
                GcStats gcStats = GetGcStats();
                if (pauseNs >= _stallAlertThresholdNs)
                {
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final VmPauseInfo pauseInfo = new VmPauseInfo(NANOSECONDS.toMillis(pauseNs), gcStats.time - lastGcStats.time, gcStats.count - lastGcStats.count);
                    VmPauseInfo pauseInfo = new VmPauseInfo(NANOSECONDS.toMillis(pauseNs), gcStats.Time - lastGcStats.Time, gcStats.Count - lastGcStats.Count);
                    _listener.accept(pauseInfo);
                }
                lastGcStats = gcStats;
            }
        }
Beispiel #2
0
 public override void Success(ExecutingQuery query)
 {
     if (NANOSECONDS.toMillis(query.ElapsedNanos()) >= _thresholdMillis)
     {
         QuerySnapshot snapshot = query.Snapshot();
         _log.info(LogEntry(snapshot));
     }
 }
Beispiel #3
0
        public TransactionExecutionStatistic(KernelTransactionImplementation tx, SystemNanoClock clock, long startTimeMillis)
        {
            long nowMillis = clock.Millis();
            long nowNanos  = clock.Nanos();

            KernelTransactionImplementation.Statistics statistics = tx.GetStatistics();
            this._waitTimeMillis       = NANOSECONDS.toMillis(statistics.GetWaitingTimeNanos(nowNanos));
            this._heapAllocatedBytes   = NullIfNegative(statistics.HeapAllocatedBytes());
            this._directAllocatedBytes = NullIfNegative(statistics.DirectAllocatedBytes());
            this._cpuTimeMillis        = NullIfNegative(statistics.CpuTimeMillis());
            this._pageFaults           = statistics.TotalTransactionPageCacheFaults();
            this._pageHits             = statistics.TotalTransactionPageCacheHits();
            this._elapsedTimeMillis    = nowMillis - startTimeMillis;
            this._idleTimeMillis       = this._cpuTimeMillis != null ? _elapsedTimeMillis - this._cpuTimeMillis - _waitTimeMillis : null;
        }