File tree 3 files changed +16
-0
lines changed
kyuubi-metrics/src/main/scala/org/apache/kyuubi/metrics
kyuubi-server/src/main/scala/org/apache/kyuubi/session
3 files changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -65,6 +65,9 @@ These metrics include:
65
65
| ` kyuubi.engine.timeout ` | | counter | 1.2.0 | <div style =' width : 150pt ;word-wrap : break-word ;white-space : normal ' > cumulative timeout engines</div > |
66
66
| ` kyuubi.engine.failed ` | ` ${user} ` | counter | 1.2.0 | <div style =' width : 150pt ;word-wrap : break-word ;white-space : normal ' > cumulative explicitly failed engine count for a ` ${user} ` </div > |
67
67
| ` kyuubi.engine.failed ` | ` ${errorType} ` | counter | 1.2.0 | <div style =' width : 150pt ;word-wrap : break-word ;white-space : normal ' > cumulative explicitly failed engine count for a particular ` ${errorType} ` , e.g. ` ClassNotFoundException ` </div > |
68
+ | ` kyuubi.engine.startup.permit.limit.total ` | | meter | 1.10.1 | <div style =' width : 150pt ;word-wrap : break-word ;white-space : normal ' > concurrently startup engines permit limit </div > |
69
+ | ` kyuubi.engine.startup.permit.available ` | | gauge | 1.10.1 | <div style =' width : 150pt ;word-wrap : break-word ;white-space : normal ' > available permits of concurrently startup engines </div > |
70
+ | ` kyuubi.engine.startup.permit.waiting ` | | gauge | 1.10.1 | <div style =' width : 150pt ;word-wrap : break-word ;white-space : normal ' > startup engines that waiting to acquire permit </div > |
68
71
| ` kyuubi.backend_service.open_session ` | | timer | 1.5.0 | <div style =' width : 150pt ;word-wrap : break-word ;white-space : normal ' > kyuubi backend service ` openSession ` method execution time and rate </div > |
69
72
| ` kyuubi.backend_service.close_session ` | | timer | 1.5.0 | <div style =' width : 150pt ;word-wrap : break-word ;white-space : normal ' > kyuubi backend service ` closeSession ` method execution time and rate </div > |
70
73
| ` kyuubi.backend_service.get_info ` | | timer | 1.5.0 | <div style =' width : 150pt ;word-wrap : break-word ;white-space : normal ' > kyuubi backend service ` getInfo ` method execution time and rate </div > |
Original file line number Diff line number Diff line change @@ -60,6 +60,11 @@ object MetricsConstants {
60
60
final val ENGINE_TIMEOUT : String = ENGINE + " timeout"
61
61
final val ENGINE_TOTAL : String = ENGINE + " total"
62
62
63
+ final private val ENGINE_STARTUP_PERMIT : String = ENGINE + " startup.permit."
64
+ final val ENGINE_STARTUP_PERMIT_LIMIT : String = ENGINE_STARTUP_PERMIT + " limit"
65
+ final val ENGINE_STARTUP_PERMIT_AVAILABLE : String = ENGINE_STARTUP_PERMIT + " available"
66
+ final val ENGINE_STARTUP_PERMIT_WAITING : String = ENGINE_STARTUP_PERMIT + " waiting"
67
+
63
68
final private val OPERATION = KYUUBI + " operation."
64
69
final val OPERATION_OPEN : String = OPERATION + " opened"
65
70
final val OPERATION_FAIL : String = OPERATION + " failed"
Original file line number Diff line number Diff line change @@ -300,6 +300,14 @@ class KyuubiSessionManager private (name: String) extends SessionManager(name) {
300
300
ms.registerGauge(EXEC_POOL_ALIVE , getExecPoolSize, 0 )
301
301
ms.registerGauge(EXEC_POOL_ACTIVE , getActiveCount, 0 )
302
302
ms.registerGauge(EXEC_POOL_WORK_QUEUE_SIZE , getWorkQueueSize, 0 )
303
+ this .engineStartupProcessSemaphore.foreach { semaphore =>
304
+ ms.markMeter(ENGINE_STARTUP_PERMIT_LIMIT , semaphore.availablePermits)
305
+ ms.registerGauge(
306
+ ENGINE_STARTUP_PERMIT_AVAILABLE ,
307
+ semaphore.availablePermits,
308
+ semaphore.availablePermits)
309
+ ms.registerGauge(ENGINE_STARTUP_PERMIT_WAITING , semaphore.getQueueLength, 0 )
310
+ }
303
311
}
304
312
super .start()
305
313
startEngineAliveChecker()
You can’t perform that action at this time.
0 commit comments