Hello, Igniters. I've prepared Proof of Concept for IEP-35 [1] PR can be found here - https://github.com/apache/ignite/pull/6510
I've done following changes: 1. `GridMonitoringManager` [2] - simple implementation of manager to store all monitoring info 2. `HttpPullExposerSpi` [3] - pull exposer implementation that can respond with JSON from http://localhost:8080/ignite/monitoring. JSON content can be veiwed in gist [4] 3. Compute task start and finish monitoring in "compute" list [5] 4. Service registration are monitored in "service" list - [6] 5. Current `IgniteSpiMBeanAdapter` rewritten using `GridMonitoringManager` [7] Design principles, monitoring subsystem details and new Ignite entities can be found in IEP [1]. My next steps will be: 1. Implementation of JMX exposer 2. Registration of all "lists" and "sensor groups" as a SQL System view. 3. Add monitoring for all unmonitoring Ignite API. (described in IEP). 4. Rewrite existing jmx metrics using GridMonitoringManager. Please, share you thoughts. Part of JSON file: ``` "COMPUTE": { "tasks": { "name": "tasks", "rows": [ { "id": "0798817a-eeec-4386-9af7-94edb39ffced", "sessionId": "a1814f95a61-912451ff-ca7b-4764-a7fd-728f6a900000", "data": { "taskClasName": "org.apache.ignite.monitoring.MonitoringSelfTest$$Lambda$145/1500885480", "startTime": 1556287337944, "timeout": 9223372036854776000, "execName": null }, "name": "anotherBroadcast" } ``` [1] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=112820392 [2] https://github.com/apache/ignite/pull/6510/files#diff-ec7d5cf5e35b99303deb9accee153c50R34 [3] https://github.com/apache/ignite/pull/6510/files#diff-32239c45e0ae3b692af2eae7078e1436R47 [4] https://gist.github.com/nizhikov/aa1e6222e6a3456472b881b8deb0e24d [5] https://github.com/apache/ignite/pull/6510/files#diff-d651ed29d07bd0c5ce291654a3254cc0R749 [6] https://github.com/apache/ignite/pull/6510/files#diff-0b4e54fbda2b0da1c10eff48416336f6R1606 [7] https://github.com/apache/ignite/pull/6510/files#diff-4398bf118150500e059069b3a1638ec7R61
signature.asc
Description: This is a digitally signed message part