ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nikolay Izhikov <nizhi...@apache.org>
Subject [IEP-35] Monitoring & Profiling. Proof of concept
Date Fri, 26 Apr 2019 14:58:29 GMT
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

Mime
View raw message