Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[GH-55] Add realtime metric support. #58

Merged
merged 1 commit into from
Nov 24, 2016

Conversation

jealous
Copy link
Contributor

@jealous jealous commented Nov 22, 2016

Add subscription support for realtime metric.

Details:

  • List metric resources.
  • List/Create/Delete metric real time query.
  • Query metric query result.
  • Add RepeatedTimer utility for management of repeated tasks.
  • List disks.
  • Add calculators meta info manager.
  • Enable/Disable real time metric collection.
  • Add metric properties in printed string of resource/resource list.
  • Add basic persist stats to csv support.

Add following metrics:

  • disk
    • read IOPS
    • write IOPS
    • read bandwidth
    • write bandwidth
    • utilization
  • lun
    • read IOPS
    • write IOPS
    • read bandwidth
    • write bandwidth
    • utilization
  • filesystem
    • read IOPS
    • write IOPS
    • read bandwidth
    • write bandwidth
  • storage processor
    • net in bandwidth
    • net out bandwidth
    • block read IOPS
    • block write IOPS
    • block read bandwidth
    • block write bandwidth
    • CIFS read IOPS
    • CIFS write IOPS
    • CIFS read bandwidth
    • CIFS write bandwidth
    • NFS read IOPS
    • NFS write IOPS
    • NFS read bandwidth
    • NFS write bandwidth
    • utilization
    • block cache read hit ratio
    • block cache write hit ratio

@coveralls
Copy link

coveralls commented Nov 22, 2016

Coverage Status

Coverage increased (+0.009%) to 93.097% when pulling 799a9cc on feature/GH-55-unityRealtimeMetric into e797cbd on develop.

@jealous jealous force-pushed the feature/GH-55-unityRealtimeMetric branch from 799a9cc to 7a229fa Compare November 23, 2016 04:05
@coveralls
Copy link

coveralls commented Nov 23, 2016

Coverage Status

Coverage increased (+0.2%) to 93.286% when pulling 7a229fa on feature/GH-55-unityRealtimeMetric into e797cbd on develop.

@@ -94,10 +94,52 @@ Feature List
- list/create/delete NFS shares
- list/create/delete DNS servers
- list ip ports.
- list/create/delete link aggregation
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

aggregations?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

- list/create/delete link aggregation
- list/create/delete Consistency Groups
- list/create/delete metric real time query
- list metric query result
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

metrics?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

except OSError as e:
# ignore existed error
# ignore exited error
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

existing

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.


def __div__(self, other):
nan = self.NaN
if other == 0:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Line 105-107 is conflict with login in 97-98

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.


def __rtruediv__(self, other):
if other is None:
raise ValueError('cannot use none as dividend.')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

@jealous jealous force-pushed the feature/GH-55-unityRealtimeMetric branch from 7a229fa to fb5061e Compare November 23, 2016 10:30
@coveralls
Copy link

coveralls commented Nov 23, 2016

Coverage Status

Coverage increased (+0.2%) to 93.305% when pulling fb5061e on feature/GH-55-unityRealtimeMetric into e797cbd on develop.

@@ -0,0 +1,415 @@
# coding=utf-8
# Copyright (c) 2015 EMC Corporation.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2016

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

@@ -0,0 +1,47 @@
# Copyright (c) 2015 EMC Corporation.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2016

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

@@ -0,0 +1,187 @@
# coding=utf-8
# Copyright (c) 2015 EMC Corporation.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2016

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

for r in self:
self._path_result_map[r.path] = r
return self._path_result_map.get(path)
# filtered = list(filter(lambda r: r.path == path, self))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unnecessary?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, removed. Thanks.

@jealous jealous force-pushed the feature/GH-55-unityRealtimeMetric branch from fb5061e to a72270d Compare November 23, 2016 11:20
@coveralls
Copy link

coveralls commented Nov 23, 2016

Coverage Status

Coverage increased (+0.2%) to 93.309% when pulling a72270d on feature/GH-55-unityRealtimeMetric into e797cbd on develop.

@jealous jealous force-pushed the feature/GH-55-unityRealtimeMetric branch from a72270d to 560569d Compare November 23, 2016 13:48
@coveralls
Copy link

coveralls commented Nov 23, 2016

Coverage Status

Coverage increased (+0.3%) to 93.339% when pulling 560569d on feature/GH-55-unityRealtimeMetric into e797cbd on develop.

@jealous jealous force-pushed the feature/GH-55-unityRealtimeMetric branch from 560569d to b80bb5a Compare November 23, 2016 14:29
@coveralls
Copy link

coveralls commented Nov 23, 2016

Coverage Status

Coverage increased (+0.2%) to 93.319% when pulling b80bb5a on feature/GH-55-unityRealtimeMetric into e797cbd on develop.

Add subscription support for realtime metric.

Details:
* List metric resources.
* List/Create/Delete metric real time query.
* Query metric query result.
* Add `RepeatedTimer` utility for management of repeated tasks.
* List disks.
* Add calculators meta info manager.
* Enable/Disable real time metric collection.
* Add metric properties in printed string of resource/resource list.
* Add basic persist stats to csv support.
* Allow enable certain resource types of metrics monitoring.
* Add badge from `landscape.io`.

Add following metrics:
* disk
  * read IOPS
  * write IOPS
  * read bandwidth
  * write bandwidth
  * utilization
* lun
  * read IOPS
  * write IOPS
  * read bandwidth
  * write bandwidth
  * utilization
* filesystem
  * read IOPS
  * write IOPS
  * read bandwidth
  * write bandwidth
* storage processor
  * net in bandwidth
  * net out bandwidth
  * block read IOPS
  * block write IOPS
  * block read bandwidth
  * block write bandwidth
  * CIFS read IOPS
  * CIFS write IOPS
  * CIFS read bandwidth
  * CIFS write bandwidth
  * NFS read IOPS
  * NFS write IOPS
  * NFS read bandwidth
  * NFS write bandwidth
  * utilization
  * block cache read hit ratio
  * block cache write hit ratio
  * core count
  * temperature
@jealous jealous force-pushed the feature/GH-55-unityRealtimeMetric branch from b80bb5a to a92c9b5 Compare November 23, 2016 14:43
@coveralls
Copy link

coveralls commented Nov 23, 2016

Coverage Status

Coverage increased (+0.2%) to 93.299% when pulling a92c9b5 on feature/GH-55-unityRealtimeMetric into e797cbd on develop.

@jealous jealous merged commit 95757b5 into develop Nov 24, 2016
@jealous jealous deleted the feature/GH-55-unityRealtimeMetric branch November 24, 2016 06:19
jealous pushed a commit that referenced this pull request Nov 24, 2016
Support Link aggregation in storops
jealous pushed a commit that referenced this pull request Nov 24, 2016
jealous pushed a commit that referenced this pull request Nov 24, 2016
Enhancements:
* [GH-46]Support persistent queue for storops
* [GH-58] Link aggregation support
* [GH-55] Add realtime metric support. (#58)

Bugfix:
* [GH-40] Add missing keep_for parameter for snap
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants