Guest User

Untitled

a guest
Jan 22nd, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 1.59 KB | None | 0 0
  1. CREATE PROCEDURE STORADM.CPU_USAGE_SVCNODE
  2. (IN interval_len INTEGER)
  3. LANGUAGE SQL
  4. BEGIN
  5.  
  6. DECLARE SQLCODE INTEGER DEFAULT 0;
  7. DECLARE begin_time TIMESTAMP;
  8. DECLARE node_name VARCHAR(64);
  9. DECLARE date_tk INTEGER;
  10. DECLARE entity_tk INTEGER;
  11. DECLARE kpi_tk INTEGER;
  12. DECLARE cpu_usage REAL;
  13.  
  14. DECLARE node_names cursor FOR (SELECT entity_value FROM STORADM.REP_ENTITY );
  15.  
  16.  
  17. SET begin_time = (CURRENT_TIMESTAMP - interval_len MINUTES);
  18. INSERT INTO STORADM.REP_DATE VALUES (DEFAULT, begin_time, interval_len);
  19. SELECT IDENTITY_VAL_LOCAL() INTO date_tk FROM SYSIBM.SYSDUMMY1;
  20.  
  21. OPEN node_names;
  22.  
  23. fetch node_names INTO node_name;
  24. while(SQLCODE=0) do
  25.  
  26. SELECT storadm.rep_entity.entity_tk INTO entity_tk
  27. FROM storadm.rep_entity WHERE entity_value = node_name;
  28.  
  29. SELECT avg(samples.cpu_util_perc)/100.0 INTO cpu_usage
  30. FROM
  31.     (
  32.         SELECT svc_node_id,cpu_util_perc
  33.         FROM tpcreport.latest_prf_svc_node
  34.         UNION
  35.         SELECT svc_node_id,cpu_util_perc FROM tpcreport.prf_svc_node WHERE prf_timestamp > begin_time
  36.     ) AS samples
  37.     JOIN
  38.     tpcreport.STORAGESUBSYSTEM_NODE ON tpcreport.storagesubsystem_node.redundancy_id = samples.svc_node_id
  39. GROUP BY tpcreport.storagesubsystem_node.display_name
  40. HAVING tpcreport.storagesubsystem_node.display_name = node_name;
  41.  
  42. SELECT storadm.rep_kpi.kpi_id INTO kpi_tk
  43. FROM storadm.rep_kpi WHERE kpi_name = 'SVC_NODE_CPU_LOAD' AND kpi_activation_date < begin_time ORDER BY kpi_activation_date DESC;
  44.  
  45. INSERT INTO storadm.rep_fact VALUES(DEFAULT, date_tk, entity_tk, kpi_tk, cpu_usage);
  46.  
  47. fetch node_names INTO node_name;
  48. END while;
  49.  
  50. close node_names;
  51.  
  52.  
  53.  
  54.  
  55. END
  56. @
Add Comment
Please, Sign In to add comment