Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,10 @@ public class MetricsType {
public static final String ACTIVITY_LOCAL_DISPATCH_SUCCEED_COUNTER =
CADENCE_METRICS_PREFIX + "activity-local-dispatch-succeed";
public static final String WORKER_PANIC_COUNTER = CADENCE_METRICS_PREFIX + "worker-panic";
public static final String LOCAL_ACTIVITY_ACTIVE_THREAD_COUNT =
CADENCE_METRICS_PREFIX + "local_activity_active_thread_count";
public static final String ACTIVITY_ACTIVE_THREAD_COUNT =
CADENCE_METRICS_PREFIX + "activity_active_thread_count";

public static final String TASK_LIST_QUEUE_LATENCY =
CADENCE_METRICS_PREFIX + "tasklist-queue-latency";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@

import com.google.common.base.Joiner;
import com.google.common.reflect.TypeToken;
import com.google.common.util.concurrent.RateLimiter;
import com.uber.cadence.PollForActivityTaskResponse;
import com.uber.cadence.RespondActivityTaskCompletedRequest;
import com.uber.cadence.RespondActivityTaskFailedRequest;
Expand All @@ -43,6 +44,7 @@
import java.util.function.BiFunction;

class POJOActivityTaskHandler implements ActivityTaskHandler {
private static final RateLimiter metricsRateLimiter = RateLimiter.create(1);

private final DataConverter dataConverter;
private final ScheduledExecutorService heartbeatExecutor;
Expand Down Expand Up @@ -186,6 +188,13 @@ public Result handle(
metricsScope,
isLocalActivity);
}
if (metricsRateLimiter.tryAcquire(1)) {
if (isLocalActivity) {
metricsScope.gauge(MetricsType.LOCAL_ACTIVITY_ACTIVE_THREAD_COUNT).update(Thread.activeCount());
} else {
metricsScope.gauge(MetricsType.ACTIVITY_ACTIVE_THREAD_COUNT).update(Thread.activeCount());
}
}
return activity.execute(activityTask, metricsScope);
}

Expand Down