]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: Display number of sessions on iSCSI overview page
authorRicardo Marques <rimarques@suse.com>
Wed, 3 Apr 2019 07:56:27 +0000 (08:56 +0100)
committerRicardo Marques <rimarques@suse.com>
Thu, 4 Apr 2019 19:15:03 +0000 (20:15 +0100)
Signed-off-by: Ricardo Marques <rimarques@suse.com>
src/pybind/mgr/dashboard/controllers/iscsi.py
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/iscsi/iscsi.component.ts
src/pybind/mgr/dashboard/frontend/src/locale/messages.xlf
src/pybind/mgr/dashboard/services/iscsi_client.py

index 36a0823b75721ce4235cc51aad801c1726fe2b04..f8b0e3063b5ef93aae7634a1ba98bba2f45a210e 100644 (file)
@@ -90,12 +90,19 @@ class IscsiUi(BaseController):
         for gateway_name in gateways_names:
             gateway = {
                 'name': gateway_name,
-                'state': 'N/A',
-                'num_targets': 'N/A'
+                'state': '',
+                'num_targets': 'n/a',
+                'num_sessions': 'n/a'
             }
             try:
                 IscsiClient.instance(gateway_name=gateway_name).ping()
                 gateway['state'] = 'up'
+                if config:
+                    gateway['num_sessions'] = 0
+                    if gateway_name in config['gateways']:
+                        gatewayinfo = IscsiClient.instance(
+                            gateway_name=gateway_name).get_gatewayinfo()
+                        gateway['num_sessions'] = gatewayinfo['num_sessions']
             except RequestException:
                 gateway['state'] = 'down'
             if config:
index 27266f4339e872e8622b8a90e4c525e0538e0b97..9b771dbb268fbf198b5b27d32b95dae59c9715ed 100644 (file)
@@ -47,6 +47,10 @@ export class IscsiComponent implements OnInit {
       {
         name: this.i18n('# Targets'),
         prop: 'num_targets'
+      },
+      {
+        name: this.i18n('# Sessions'),
+        prop: 'num_sessions'
       }
     ];
     this.imagesColumns = [
index e0040aeeeaf9affb484a64ec8f0ec2476e341a69..8a1f6be6909b4ecf0bbe0fe2285bf1bdd77c15a8 100644 (file)
           <context context-type="sourcefile">src/app/ceph/block/iscsi-target-list/iscsi-target-list.component.ts</context>
           <context context-type="linenumber">1</context>
         </context-group>
+        <context-group purpose="location">
+          <context context-type="sourcefile">src/app/ceph/block/iscsi/iscsi.component.ts</context>
+          <context context-type="linenumber">1</context>
+        </context-group>
       </trans-unit>
       <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">
         <source>State</source>
index 887b0ca0d68f56cc72ab10800a437472d748592d..58f02fdcc745f46b7e6b2c05e11580dd0c2a41d5 100644 (file)
@@ -102,6 +102,11 @@ class IscsiClient(RestClient):
             'skipchecks': 'true'
         })
 
+    @RestClient.api_get('/api/gatewayinfo')
+    def get_gatewayinfo(self, request=None):
+        logger.debug("iSCSI: Getting gatewayinfo")
+        return request()
+
     @RestClient.api_put('/api/disk/{pool}/{image}')
     def create_disk(self, pool, image, backstore, request=None):
         logger.debug("iSCSI: Creating disk: %s/%s", pool, image)