Hello team,
Many thanks to the developers of Storage Insights REST API! I have started working on SI SDK for it immediately and already implemented these features:
- si_rest - IBM Storage Insights REST API client library, written in Python
- It uses sync/async HTTP library for connection
- Provides easy access: profiles, login(), logoff(), etc.
- Has a query language primitives: select(), join()
- Supports various output formats: JSON, CSV, raw output
- Provides unified data object model - "resource" - which allows creating conveyors of data processing e.g., s.get('storage-systems').select_keys(keys=('name', 'type', 'model')).write_csv()
- si_grep - a CLI utility that uses all the features of the above mentioned si_rest library to query SI REST API to query data, process it and create formatted reports.
Currently the REST API data structures of SI are represented only by these 4 branches: storage-systems, storage-systems/{system_id}/volumes, alerts and notifications. This is, obviously, not enough to produce detailed reports about storage consuming and performance. I very much look forward to see more of them in the future. Does anybody know when to expect REST API will be able to provide more info?
Also, it would be great to know details about SI JSON structures and their name conventions. For instance, how do the REST tree paths are formed and linked together - I see there is /storage-systems for the list of storage systems and storage_system_id to refer individual systems. As, there is only storage-systems/{system_id}/volumes implemented in SI now, will this rule apply to all similar data structures, e.g. hosts and their IDs? Is it possible to find more or less full description of the REST tree to be implemented?
All the best,
Mike
------------------------------
Mikhail Zakharov
------------------------------