mirror of
https://github.com/lukaszraczylo/graphql-monitoring-proxy.git
synced 2026-10-20 06:28:13 +00:00
fixup! Improve caching by adding user ids and roles to hash.
This commit is contained in:
@@ -563,6 +563,26 @@
|
|||||||
<span class="metric-label">Enabled</span>
|
<span class="metric-label">Enabled</span>
|
||||||
<span class="metric-value" id="cb-enabled">--</span>
|
<span class="metric-value" id="cb-enabled">--</span>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="metric-row">
|
||||||
|
<span class="metric-label">Total Requests</span>
|
||||||
|
<span class="metric-value" id="cb-total-requests">--</span>
|
||||||
|
</div>
|
||||||
|
<div class="metric-row">
|
||||||
|
<span class="metric-label">Total Successes</span>
|
||||||
|
<span class="metric-value" id="cb-total-successes">--</span>
|
||||||
|
</div>
|
||||||
|
<div class="metric-row">
|
||||||
|
<span class="metric-label">Total Failures</span>
|
||||||
|
<span class="metric-value" id="cb-total-failures">--</span>
|
||||||
|
</div>
|
||||||
|
<div class="metric-row">
|
||||||
|
<span class="metric-label">Consecutive Successes</span>
|
||||||
|
<span class="metric-value" id="cb-consecutive-successes">--</span>
|
||||||
|
</div>
|
||||||
|
<div class="metric-row">
|
||||||
|
<span class="metric-label">Consecutive Failures</span>
|
||||||
|
<span class="metric-value" id="cb-consecutive-failures">--</span>
|
||||||
|
</div>
|
||||||
<div class="metric-row">
|
<div class="metric-row">
|
||||||
<span class="metric-label">Max Failures</span>
|
<span class="metric-label">Max Failures</span>
|
||||||
<span class="metric-value" id="cb-max-failures">--</span>
|
<span class="metric-value" id="cb-max-failures">--</span>
|
||||||
@@ -1208,6 +1228,19 @@
|
|||||||
|
|
||||||
document.getElementById('cb-enabled').textContent = data.enabled ? 'Yes' : 'No';
|
document.getElementById('cb-enabled').textContent = data.enabled ? 'Yes' : 'No';
|
||||||
|
|
||||||
|
if (data.counts) {
|
||||||
|
document.getElementById('cb-total-requests').textContent =
|
||||||
|
(data.counts.requests || 0).toLocaleString();
|
||||||
|
document.getElementById('cb-total-successes').textContent =
|
||||||
|
(data.counts.total_successes || 0).toLocaleString();
|
||||||
|
document.getElementById('cb-total-failures').textContent =
|
||||||
|
(data.counts.total_failures || 0).toLocaleString();
|
||||||
|
document.getElementById('cb-consecutive-successes').textContent =
|
||||||
|
(data.counts.consecutive_successes || 0).toLocaleString();
|
||||||
|
document.getElementById('cb-consecutive-failures').textContent =
|
||||||
|
(data.counts.consecutive_failures || 0).toLocaleString();
|
||||||
|
}
|
||||||
|
|
||||||
if (data.config) {
|
if (data.config) {
|
||||||
document.getElementById('cb-max-failures').textContent = data.config.max_failures || '--';
|
document.getElementById('cb-max-failures').textContent = data.config.max_failures || '--';
|
||||||
document.getElementById('cb-timeout').textContent = (data.config.timeout || '--') + 's';
|
document.getElementById('cb-timeout').textContent = (data.config.timeout || '--') + 's';
|
||||||
|
|||||||
@@ -208,9 +208,17 @@ func (ad *AdminDashboard) getCircuitBreakerStatus(c *fiber.Ctx) error {
|
|||||||
if cb != nil {
|
if cb != nil {
|
||||||
cbMutex.RLock()
|
cbMutex.RLock()
|
||||||
state := cb.State()
|
state := cb.State()
|
||||||
|
counts := cb.Counts()
|
||||||
cbMutex.RUnlock()
|
cbMutex.RUnlock()
|
||||||
|
|
||||||
status["state"] = state.String()
|
status["state"] = state.String()
|
||||||
|
status["counts"] = map[string]interface{}{
|
||||||
|
"requests": counts.Requests,
|
||||||
|
"total_successes": counts.TotalSuccesses,
|
||||||
|
"total_failures": counts.TotalFailures,
|
||||||
|
"consecutive_successes": counts.ConsecutiveSuccesses,
|
||||||
|
"consecutive_failures": counts.ConsecutiveFailures,
|
||||||
|
}
|
||||||
status["config"] = map[string]interface{}{
|
status["config"] = map[string]interface{}{
|
||||||
"max_failures": cfg.CircuitBreaker.MaxFailures,
|
"max_failures": cfg.CircuitBreaker.MaxFailures,
|
||||||
"failure_ratio": cfg.CircuitBreaker.FailureRatio,
|
"failure_ratio": cfg.CircuitBreaker.FailureRatio,
|
||||||
@@ -732,9 +740,17 @@ func (ad *AdminDashboard) gatherAllStats() map[string]interface{} {
|
|||||||
if cb != nil {
|
if cb != nil {
|
||||||
cbMutex.RLock()
|
cbMutex.RLock()
|
||||||
state := cb.State()
|
state := cb.State()
|
||||||
|
counts := cb.Counts()
|
||||||
cbMutex.RUnlock()
|
cbMutex.RUnlock()
|
||||||
|
|
||||||
cbStatus["state"] = state.String()
|
cbStatus["state"] = state.String()
|
||||||
|
cbStatus["counts"] = map[string]interface{}{
|
||||||
|
"requests": counts.Requests,
|
||||||
|
"total_successes": counts.TotalSuccesses,
|
||||||
|
"total_failures": counts.TotalFailures,
|
||||||
|
"consecutive_successes": counts.ConsecutiveSuccesses,
|
||||||
|
"consecutive_failures": counts.ConsecutiveFailures,
|
||||||
|
}
|
||||||
cbStatus["config"] = map[string]interface{}{
|
cbStatus["config"] = map[string]interface{}{
|
||||||
"max_failures": cfg.CircuitBreaker.MaxFailures,
|
"max_failures": cfg.CircuitBreaker.MaxFailures,
|
||||||
"failure_ratio": cfg.CircuitBreaker.FailureRatio,
|
"failure_ratio": cfg.CircuitBreaker.FailureRatio,
|
||||||
|
|||||||
Reference in New Issue
Block a user