~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:49:55 1a "OCI Infrastructure" 15:49:55 Infrastructure Visual Design 15:49:55 1a.1 15:49:57 1a "00012_oci360_1a_1_infrastructure_visual_design.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:49:59 1b "Tenancy Information" 15:49:59 Region Subscription SELECT t1.* FROM OCI360_REGIONS_SUBS t1 15:49:59 1b.2 15:49:59 1b "00013_oci360_1b_2_region_subscription.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:04 1b "Tenancy Information" 15:50:04 Region Map SELECT t1.region_name, t2.latitude, t2.longitude FROM OCI360_REGIONS_SUBS t1, "OCI360_LOCATION" t2 where t1.region_key=t2.name 15:50:04 1b.3 15:50:04 1b "00014_oci360_1b_3_region_map.html" 15:50:07 1b "00015_oci360_1b_3_region_map_map_chart.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:09 1b "Tenancy Information" 15:50:09 Compartments SELECT ID, NAME, DESCRIPTION, TIME_CREATED, INACTIVE_STATUS, LIFECYCLE_STATE, COMPARTMENT_ID PARENT_COMP_ID FROM OCI360_COMPARTMENTS 15:50:09 1b.4 15:50:10 1b "00016_oci360_1b_4_compartments.html" 21 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:14 1b "Tenancy Information" 15:50:14 ADs SELECT ID, NAME FROM OCI360_ADS ORDER BY NAME ASC 15:50:14 1b.5 15:50:14 1b "00017_oci360_1b_5_ads.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:15 1b "Tenancy Information" 15:50:15 Fault Domains SELECT DISTINCT ID, NAME, AVAILABILITY_DOMAIN FROM OCI360_FAULT_DOMAINS ORDER BY AVAILABILITY_DOMAIN, NAME 15:50:15 1b.6 15:50:15 1b "00018_oci360_1b_6_fault_domains.html" 9 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:16 1b "Tenancy Information" 15:50:16 Space Utilization Summary WITH tvols AS (select nvl(sum(SIZE_IN_GBS),0) tsize from OCI360_VOLUMES where lifecycle_state = 'AVAILABLE'), tbvols AS (select nvl(sum(SIZE_IN_GBS),0) tsize from OCI360_BVOLUMES where lifecycle_state = 'AVAILABLE'), tnodes AS (select nvl(sum(SOFTWARE_STORAGE_SIZE_IN_GB),0) tsize from OCI360_DB_NODES where lifecycle_state in ('AVAILABLE','STOPPED')), tdbs AS (select nvl(sum(DATA_STORAGE_SIZE_IN_GBS+RECO_STORAGE_SIZE_IN_GB),0) tsize from (select distinct id,DATA_STORAGE_SIZE_IN_GBS,RECO_STORAGE_SIZE_IN_GB,lifecycle_state from OCI360_DB_SYSTEMS) where lifecycle_state = 'AVAILABLE'), tbkps AS (select nvl(sum(UNIQUE_SIZE_IN_GBS),0) tsize from OCI360_BACKUPS where lifecycle_state = 'AVAILABLE'), tbbkps AS (select nvl(sum(UNIQUE_SIZE_IN_GBS),0) tsize from OCI360_BV_BACKUPS where lifecycle_state = 'AVAILABLE'), tbos AS (select nvl(round(sum("APPROXIMATE_SIZE")/power(1024,3)),0) tsize from OCI360_BUCKETS), tbds AS (SELECT nvl(sum(NODES$ATTACHED_BLOCK_VOLUMES$VOLUME_SIZE_IN_GBS),0) tsize FROM OCI360_BDS_INSTANCES) SELECT label, (tsize/SUM(tsize) over())*100 dummy_01, style dummy_02, mo FROM ( SELECT 'Volume Size' label, tsize, '34CF27' style, tsize || ' GB' mo FROM tvols UNION ALL SELECT 'Boot-Volume Size', tsize, '9FFA9D', tsize || ' GB' FROM tbvols UNION ALL SELECT 'Backup Size', tbkps.tsize + tbbkps.tsize, '0252D7', (tbkps.tsize + tbbkps.tsize) || ' GB' FROM tbkps, tbbkps UNION ALL SELECT 'Database Size', tnodes.tsize + tdbs.tsize, '1E96DD', (tnodes.tsize + tdbs.tsize) || ' GB' FROM tnodes,tdbs UNION ALL SELECT 'Object Storage Size', tsize, 'CFCF26', tsize || ' GB' FROM tbos UNION ALL SELECT 'Bigdata Size', tsize, 'ABABAB', tsize || ' GB' FROM tbds ) 15:50:16 1b.7 15:50:17 1b "00019_oci360_1b_7_space_utilization_summary.html" 15:50:18 1b "00020_oci360_1b_7_space_utilization_summary_bar_chart.html" 6 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:19 1b "Tenancy Information" 15:50:19 Utilization Tree Map WITH t_reg AS (SELECT /*+ materialize */ region_name, region_key from OCI360_REGIONS_SUBS), t_inst AS (SELECT /*+ materialize */ id, display_name || ' - ' || 'I' || rank() over (order by display_name, id) display_name, compartment_id, /* For IAD and PHX, the key used in instance region column is actually the region key, while in other is the region name */ decode(region,'iad','us-ashburn-1','phx','us-phoenix-1',region) region FROM oci360_instances), t_comp AS (SELECT /*+ materialize */ id, name || ' - ' || 'C' || rank() over (order by name, id) name FROM oci360_compartments), t_vols AS (SELECT t1.id, t3.display_name || ' - ' || 'V' || rank() over (order by t3.display_name, t3.id) display_name, t3.size_in_gbs FROM (SELECT /*+ materialize */ * FROM oci360_instances) t1, (SELECT /*+ materialize */ * FROM oci360_vol_attachs) t2, (SELECT /*+ materialize */ * FROM oci360_volumes) t3 WHERE t1.id = t2.instance_id AND t2.volume_id = t3.id AND t2.lifecycle_state = 'ATTACHED'), t_bvols AS (SELECT t1.id, t3.display_name || ' - ' || 'B' || rank() over (order by t3.display_name, t3.id) display_name, t3.size_in_gbs FROM (SELECT /*+ materialize */ * FROM oci360_instances) t1, (SELECT /*+ materialize */ * FROM oci360_bv_attachs) t2, (SELECT /*+ materialize */ * FROM oci360_bvolumes) t3 WHERE t1.id = t2.instance_id AND t2.boot_volume_id = t3.id AND t2.lifecycle_state = 'ATTACHED'), t_bvols_bkp AS (SELECT t1.id, t4.display_name || ' - ' || 'D' || rank() over (order by t4.display_name, t4.id) display_name, t4.unique_size_in_gbs size_in_gbs FROM (SELECT /*+ materialize */ * FROM oci360_instances) t1, (SELECT /*+ materialize */ * FROM oci360_bv_attachs) t2, (SELECT /*+ materialize */ * FROM oci360_bvolumes) t3, (SELECT /*+ materialize */ * FROM oci360_bv_backups) t4 WHERE t1.id = t2.instance_id AND t2.boot_volume_id = t3.id AND t2.lifecycle_state = 'ATTACHED' AND t3.id = t4.boot_volume_id AND t4.lifecycle_state = 'AVAILABLE'), t_vols_bkp AS (SELECT t1.id, t4.display_name || ' - ' || 'E' || rank() over (order by t4.display_name, t4.id) display_name, t4.unique_size_in_gbs size_in_gbs FROM (SELECT /*+ materialize */ * FROM oci360_instances) t1, (SELECT /*+ materialize */ * FROM oci360_vol_attachs) t2, (SELECT /*+ materialize */ * FROM oci360_volumes) t3, (SELECT /*+ materialize */ * FROM oci360_backups) t4 WHERE t1.id = t2.instance_id AND t2.volume_id = t3.id AND t2.lifecycle_state = 'ATTACHED' AND t3.id = t4.volume_id AND t4.lifecycle_state = 'AVAILABLE') SELECT 'All Regions' "Object", null "Parent", 0 "Value", 0 Color FROM dual UNION SELECT region_name, 'All Regions', 0, 0 FROM t_reg UNION SELECT name || ' - ' || region_name, region_name, 0, 0 FROM t_comp, t_reg UNION SELECT t2.display_name, t1.name || ' - ' || region, 0, 0 FROM t_comp t1, t_inst t2 WHERE t2.compartment_id = t1.id UNION SELECT t1.display_name, t2.display_name, t1.size_in_gbs, 0 FROM t_vols t1, t_inst t2 WHERE t2.id = t1.id UNION SELECT t1.display_name, t2.display_name, t1.size_in_gbs, 0 FROM t_bvols t1, t_inst t2 WHERE t2.id = t1.id UNION SELECT t1.display_name, t2.display_name, t1.size_in_gbs, 1 FROM t_vols_bkp t1, t_inst t2 WHERE t2.id = t1.id UNION SELECT t1.display_name, t2.display_name, t1.size_in_gbs, 1 FROM t_bvols_bkp t1, t_inst t2 WHERE t2.id = t1.id 15:50:19 1b.8 15:50:20 1b "00021_oci360_1b_8_utilization_tree_map.html" 15:50:21 1b "00022_oci360_1b_8_utilization_tree_map_treemap_chart.html" 31 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:23 1c "Compute Instances" 15:50:23 Compute Instances WITH t1 as (select /*+ materialize */ * from OCI360_INSTANCES), t2 as (select /*+ materialize */ * from OCI360_COMPARTMENTS), t3 as (select /*+ materialize */ * from OCI360_IMAGES), t4 as (select /*+ materialize */ * from OCI360_VNIC_ATTACHS), t5 as (select /*+ materialize */ * from OCI360_VNICS) SELECT distinct t1.id, t1.display_name, t1.shape, t1.region, t1.availability_domain, t1.lifecycle_state, t3.display_name image_name, t3.operating_system, t3.operating_system_version, t1.fault_domain, t1.time_created, t2.name compartment_name, t5.private_ip ip_address_pri_primary, t5.public_ip ip_address_pub_primary FROM t1,t2,t3,t4,t5 WHERE t1.image_id = t3.id (+) AND t1.compartment_id = t2.id (+) AND t1.id = t4.instance_id AND t4.lifecycle_state = 'ATTACHED' AND t4.vnic_id = t5.id AND t5.is_primary = 'true' AND t5.lifecycle_state = 'AVAILABLE' 15:50:23 1c.9 15:50:23 1c "00023_oci360_1c_9_compute_instances.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:26 1c "Compute Instances" 15:50:26 Compute Instances - Raw SELECT t1.* FROM OCI360_INSTANCES t1 15:50:26 1c.10 15:50:27 1c "00024_oci360_1c_10_compute_instances_raw.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:29 1c "Compute Instances" 15:50:29 Compute Instances per Compartment WITH t1 as (select /*+ materialize */ compartment_id,count(*) total_comp from OCI360_INSTANCES group by compartment_id), t2 as (select /*+ materialize */ * from OCI360_COMPARTMENTS), tot as (select sum(total_comp) total_global from t1) SELECT t2.name || ' - ' || total_comp name, total_comp total, trim(to_char(round(total_comp/decode(total_global,0,1,total_global),4)*100,'990D99')) percent FROM t1, t2, tot WHERE t1.compartment_id=t2.id 15:50:29 1c.11 15:50:30 1c "00025_oci360_1c_11_compute_instances_per_compartment.html" 15:50:35 1c "00026_oci360_1c_11_compute_instances_per_compartment_pie_chart.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:39 1c "Compute Instances" 15:50:39 Compute Instances per Shape WITH tot as (SELECT count(*) total_global FROM OCI360_INSTANCES) SELECT t1.shape || ' - ' || count(*) shape, count(*) total, trim(to_char(round(count(*)/decode(total_global,0,1,total_global),4)*100,'990D99')) percent FROM OCI360_INSTANCES t1, tot GROUP BY t1.shape,total_global 15:50:39 1c.12 15:50:40 1c "00027_oci360_1c_12_compute_instances_per_shape.html" 15:50:43 1c "00028_oci360_1c_12_compute_instances_per_shape_pie_chart.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:44 1c "Compute Instances" 15:50:44 Shapes WITH t_price_comp AS (SELECT /*+ materialize */ * FROM "OCI360_PRICING" WHERE subject = 'COMPUTE') SELECT distinct t1.shape, t2.ocpu, t2.memory_gb, t2.local_disk_tb, t2.network_gbps, t2.gpu, t3.mf "Hour US$" FROM OCI360_SHAPES t1, "OCI360_SHAPE_SPECS" t2, t_price_comp t3 WHERE t1.shape = t2.shape(+) AND t1.shape = t3.inst_type(+) 15:50:44 1c.13 15:50:45 1c "00029_oci360_1c_13_shapes.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:47 1c "Compute Instances" 15:50:47 Shapes in Tenancy SELECT t1.* FROM OCI360_SHAPES t1 15:50:47 1c.14 15:50:47 1c "00030_oci360_1c_14_shapes_in_tenancy.html" 10 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:49 1c "Compute Instances" 15:50:49 Console Connections SELECT t1.* FROM OCI360_CONSOLE_CONNS t1 15:50:49 1c.15 15:50:50 1c "00031_oci360_1c_15_console_connections.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:51 1c "Compute Instances" 15:50:51 Console History SELECT t1.* FROM OCI360_CONSOLE_HIST t1 15:50:51 1c.16 15:50:52 1c "00032_oci360_1c_16_console_history.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:53 1c "Compute Instances" 15:50:53 Instance Costs estimations WITH t_inst AS (SELECT /*+ materialize */ * FROM OCI360_INSTANCES), t_comp AS (SELECT /*+ materialize */ * FROM oci360_compartments), t_img AS (SELECT /*+ materialize */ * FROM oci360_images), t_price_comp AS (SELECT /*+ materialize */ inst_type, mf FROM "OCI360_PRICING" WHERE subject = 'COMPUTE'), t_price_win AS (SELECT /*+ materialize */ * FROM "OCI360_PRICING" WHERE subject = 'OS_WINDOWS'), t_price_vol AS (SELECT /*+ materialize */ * FROM "OCI360_PRICING" WHERE subject = 'STORAGE' AND inst_type = 'Block Volumes'), t_price_bkp AS (SELECT /*+ materialize */ * FROM "OCI360_PRICING" WHERE subject = 'STORAGE' AND inst_type = 'Object Storage'), t_vols AS (SELECT t1.id, t5.size_in_gbs BOOTVOL_SIZE_GBS, NVL(SUM(t3.size_in_gbs), 0) VOL_SIZE_GBS FROM (SELECT /*+ materialize */ * FROM OCI360_INSTANCES) t1, (SELECT /*+ materialize */ * FROM oci360_vol_attachs) t2, (SELECT /*+ materialize */ * FROM oci360_volumes) t3, (SELECT /*+ materialize */ * FROM oci360_bv_attachs) t4, (SELECT /*+ materialize */ * FROM oci360_bvolumes) t5 WHERE t1.id = t2.instance_id (+) AND t2.volume_id = t3.id (+) AND t2.lifecycle_state (+) = 'ATTACHED' AND t1.id = t4.instance_id (+) AND t4.boot_volume_id = t5.id (+) AND t4.lifecycle_state (+) = 'ATTACHED' GROUP BY t1.id, t5.size_in_gbs), t_bvols_bkp AS (SELECT t1.id, NVL(SUM(t4.unique_size_in_gbs), 0) BKP_BOOTVOL_SIZE_GBS FROM (SELECT /*+ materialize */ * FROM OCI360_INSTANCES) t1, (SELECT /*+ materialize */ * FROM oci360_bv_attachs) t2, (SELECT /*+ materialize */ * FROM oci360_bvolumes) t3, (SELECT /*+ materialize */ * FROM oci360_bv_backups) t4 WHERE t1.id = t2.instance_id (+) AND t2.boot_volume_id = t3.id (+) AND t2.lifecycle_state (+) = 'ATTACHED' AND t3.id = t4.boot_volume_id (+) AND t4.lifecycle_state (+) = 'AVAILABLE' GROUP BY t1.id), t_vols_bkp AS (SELECT t1.id, NVL(SUM(t4.unique_size_in_gbs), 0) BKP_VOL_SIZE_GBS FROM (SELECT /*+ materialize */ * FROM OCI360_INSTANCES) t1, (SELECT /*+ materialize */ * FROM oci360_vol_attachs) t2, (SELECT /*+ materialize */ * FROM oci360_volumes) t3, (SELECT /*+ materialize */ * FROM oci360_backups) t4 WHERE t1.id = t2.instance_id (+) AND t2.volume_id = t3.id (+) AND t2.lifecycle_state (+) = 'ATTACHED' AND t3.id = t4.volume_id (+) AND t4.lifecycle_state (+) = 'AVAILABLE' GROUP BY t1.id) SELECT display_name "Compute Name", shape "Shape", region "Region", availability_domain "AD", lifecycle_state "State", operating_system "OS", compartment_name "Compartment", bootvol_size_gbs "Boot Size", vol_size_gbs "Volumes Size", bkp_size_gbs "Backups Size", ROUND(price_comp_month, 2) "Shape - US$ Cost per month", ROUND(price_win_month, 2) "Windows - US$ Cost per month", ROUND(price_vol_month, 2) "Storage - US$ Cost per month", ROUND(price_bkp_month, 2) "Backup - US$ Cost per month", ROUND(price_comp_month + price_win_month + price_vol_month + price_bkp_month, 2) "Total - US$ Cost per month", id "Instance OCID" FROM (SELECT t_inst.display_name, t_inst.shape, t_inst.region, t_inst.availability_domain, t_inst.lifecycle_state, t_img.operating_system, t_comp.name COMPARTMENT_NAME, t_vols.bootvol_size_gbs, t_vols.vol_size_gbs, t_bvols_bkp.bkp_bootvol_size_gbs + t_vols_bkp.bkp_vol_size_gbs BKP_SIZE_GBS, t_price_comp.mf * to_number(substr(t_inst.shape,instr(t_inst.shape,'.',-1)+1)) * 24 * 30 price_comp_month, DECODE(t_img.operating_system, 'Windows',t_price_win.mf * to_number(substr(t_inst.shape,instr(t_inst.shape,'.',-1)+1)) * 24 * 30, 0) price_win_month, t_price_vol.mf * ( t_vols.bootvol_size_gbs + t_vols.vol_size_gbs ) price_vol_month, t_price_bkp.mf * ( t_bvols_bkp.bkp_bootvol_size_gbs + t_vols_bkp.bkp_vol_size_gbs ) price_bkp_month, t_inst.id FROM t_inst, t_comp, t_img, t_vols, t_vols_bkp, t_bvols_bkp, t_price_comp, t_price_win, t_price_vol, t_price_bkp WHERE t_inst.compartment_id = t_comp.id (+) AND t_inst.image_id = t_img.id (+) AND substr(t_inst.shape,1,instr(t_inst.shape,'.',-1)-1) = t_price_comp.inst_type (+) /* AND t_inst.shape = t_price_win.inst_type (+) */ AND t_inst.id = t_vols.id (+) AND t_inst.id = t_vols_bkp.id (+) AND t_inst.id = t_bvols_bkp.id (+)) ORDER BY "Total - US$ Cost per month" DESC 15:50:53 1c.17 15:50:54 1c "00033_oci360_1c_17_instance_costs_estimations.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:50:57 1d "Compute Management" 15:50:57 Instance Configurations SELECT distinct ID, DISPLAY_NAME, TIME_CREATED, COMPARTMENT_ID FROM OCI360_INST_CONFIG t1 15:50:57 1d.18 15:50:58 1d "00034_oci360_1d_18_instance_configurations.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:00 1d "Compute Management" 15:51:00 Instance Configuration Deferred Fields SELECT ID, DISPLAY_NAME, TIME_CREATED, COMPARTMENT_ID, DEFERRED_FIELDS FROM OCI360_INST_CONFIG t1 WHERE DEFERRED_FIELDS is not null 15:51:00 1d.19 15:51:01 1d "00035_oci360_1d_19_instance_configuration_deferred_fields.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:05 1d "Compute Management" 15:51:05 Instance Configuration Details SELECT * FROM OCI360_INST_CONFIG t1 15:51:05 1d.20 15:51:05 1d "00036_oci360_1d_20_instance_configuration_details.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:07 1d "Compute Management" 15:51:07 Instance Pools SELECT ID, SIZE, DISPLAY_NAME, TIME_CREATED, COMPARTMENT_ID, LOAD_BALANCERS, LIFECYCLE_STATE, INSTANCE_CONFIGURATION_ID, PLACEMENT_CONFIGURATIONS$PRIMARY_SUBNET_ID, PLACEMENT_CONFIGURATIONS$AVAILABILITY_DOMAIN, PLACEMENT_CONFIGURATIONS$SECONDARY_VNIC_SUBNETS FROM OCI360_INST_POOLS t1 15:51:07 1d.21 15:51:08 1d "00037_oci360_1d_21_instance_pools.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:09 1d "Compute Management" 15:51:09 Instance Pool Members SELECT t1.* FROM OCI360_INST_POOLS_INSTS t1 15:51:09 1d.22 15:51:10 1d "00038_oci360_1d_22_instance_pool_members.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:12 1e "Compute Images" 15:51:12 Images SELECT ID, LAUNCH_MODE, SIZE_IN_MBS, DISPLAY_NAME, TIME_CREATED, BASE_IMAGE_ID, AGENT_FEATURES, COMPARTMENT_ID, LAUNCH_OPTIONS$FIRMWARE, LAUNCH_OPTIONS$NETWORK_TYPE, LAUNCH_OPTIONS$BOOT_VOLUME_TYPE, LAUNCH_OPTIONS$REMOTE_DATA_VOLUME_TYPE, LAUNCH_OPTIONS$IS_CONSISTENT_VOLUME_NAMING_ENABLED, LAUNCH_OPTIONS$IS_PV_ENCRYPTION_IN_TRANSIT_ENABLED, LIFECYCLE_STATE, OPERATING_SYSTEM, CREATE_IMAGE_ALLOWED, OPERATING_SYSTEM_VERSION FROM OCI360_IMAGES 15:51:12 1e.23 15:51:12 1e "00039_oci360_1e_23_images.html" 96 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:14 1e "Compute Images" 15:51:14 Compute Instances per Image WITH t1 as (select /*+ materialize */ * from OCI360_INSTANCES), t2 as (select /*+ materialize */ * from OCI360_IMAGES) SELECT t2.id, t2.display_name, count(*) total FROM t1, t2 WHERE t1.image_id=t2.id GROUP BY t2.id, t2.display_name ORDER BY 3 DESC 15:51:14 1e.24 15:51:14 1e "00040_oci360_1e_24_compute_instances_per_image.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:16 1f "Partner Image Catalog (PIC)" 15:51:16 PIC Agreements SELECT t1.* FROM OCI360_PIC_AGREES t1 15:51:16 1f.25 15:51:17 1f "00041_oci360_1f_25_pic_agreements.html" 209 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:19 1f "Partner Image Catalog (PIC)" 15:51:19 PIC Listing SELECT t1.* FROM OCI360_PIC_LISTING t1 15:51:19 1f.26 15:51:20 1f "00042_oci360_1f_26_pic_listing.html" 138 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:23 1f "Partner Image Catalog (PIC)" 15:51:23 PIC Subscription SELECT t1.* FROM OCI360_PIC_SUBS t1 15:51:23 1f.27 15:51:24 1f "00043_oci360_1f_27_pic_subscription.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:30 1f "Partner Image Catalog (PIC)" 15:51:30 PIC Version SELECT t1.* FROM OCI360_PIC_VERSIONS t1 15:51:30 1f.28 15:51:31 1f "00044_oci360_1f_28_pic_version.html" 210 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:34 1g "Changes since last execution" 15:51:34 Compute changes 15:51:34 1g.29 15:51:36 1g "00045_oci360_1g_29_compute_changes.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:38 1g "Changes since last execution" 15:51:38 Volume changes 15:51:38 1g.30 15:51:39 1g "00046_oci360_1g_30_volume_changes.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:41 1g "Changes since last execution" 15:51:41 Security Lists changes 15:51:41 1g.31 15:51:42 1g "00047_oci360_1g_31_security_lists_changes.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:44 2a "Volumes" 15:51:44 Volumes SELECT jt.DISPLAY_NAME, jt.IS_HYDRATED, jt.SIZE_IN_GBS, jt.SIZE_IN_MBS, jt.TIME_CREATED, jt.VPUS_PER_GB, tcomp.NAME COMPARTMENT_NAME, jt.SOURCE_DETAILS$ID, jt.SOURCE_DETAILS$TYPE, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, jt.ID FROM OCI360_VOLUMES jt, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign, (select distinct id, display_name policy_name from OCI360_BKP_POLICY) tbkppol WHERE jt.COMPARTMENT_ID = tcomp.ID AND jt.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.POLICY_ID = tbkppol.ID (+) ORDER BY COMPARTMENT_NAME, jt.TIME_CREATED DESC 15:51:44 2a.32 15:51:45 2a "00048_oci360_2a_32_volumes.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:48 2a "Volumes" 15:51:48 Total Intance Volumes WITH t1 AS (SELECT /*+ materialize */ * FROM oci360_instances), t2 AS (SELECT /*+ materialize */ * FROM oci360_vol_attachs), t3 AS (SELECT /*+ materialize */ * FROM oci360_volumes), t4 AS (SELECT /*+ materialize */ * FROM oci360_bv_attachs), t5 AS (SELECT /*+ materialize */ * FROM oci360_bvolumes) SELECT t1.display_name INSTANCE_NAME, COUNT(*) TOTAL_VOLS, TO_NUMBER(t5.size_in_gbs) BOOTVOL_SIZE_GBS, SUM(nvl(t3.size_in_gbs,0)) VOL_SIZE_GBS, t5.size_in_gbs + SUM(nvl(t3.size_in_gbs,0)) TOTAL_SIZE_GBS, t1.id INSTANCE_ID FROM t1, t2, t3, t4, t5 WHERE t1.id = t2.instance_id(+) AND t2.volume_id = t3.id(+) AND t2.lifecycle_state(+) = 'ATTACHED' AND t1.id = t4.instance_id AND t4.boot_volume_id = t5.id GROUP BY t1.id, t1.display_name, t5.size_in_gbs ORDER BY total_size_gbs DESC 15:51:48 2a.33 15:51:50 2a "00049_oci360_2a_33_total_intance_volumes.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:53 2a "Volumes" 15:51:53 Unallocated Volumes with t1 as (SELECT /*+ materialize */ * FROM oci360_volumes), t2 as (SELECT /*+ materialize */ * FROM oci360_vol_attachs) SELECT ID, KMS_KEY_ID, IS_HYDRATED, SIZE_IN_GBS, SIZE_IN_MBS, VPUS_PER_GB, DISPLAY_NAME, TIME_CREATED, COMPARTMENT_ID, SOURCE_DETAILS$ID, SOURCE_DETAILS$TYPE, LIFECYCLE_STATE, VOLUME_GROUP_ID, AVAILABILITY_DOMAIN FROM t1 WHERE not exists (SELECT 1 FROM t2 WHERE t1.id = t2.volume_id AND t2.lifecycle_state = 'ATTACHED') 15:51:53 2a.34 15:51:54 2a "00050_oci360_2a_34_unallocated_volumes.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:56 2a "Volumes" 15:51:56 Volume Attachments SELECT t1.* FROM OCI360_VOL_ATTACHS t1 15:51:56 2a.35 15:51:56 2a "00051_oci360_2a_35_volume_attachments.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:51:57 2a "Volumes" 15:51:57 Volume Groups SELECT distinct ID, VOLUME_IDS, IS_HYDRATED, SIZE_IN_GBS, SIZE_IN_MBS, DISPLAY_NAME, TIME_CREATED, COMPARTMENT_ID, LIFECYCLE_STATE, AVAILABILITY_DOMAIN FROM OCI360_VOLGROUP t1 15:51:57 2a.36 15:51:57 2a "00052_oci360_2a_36_volume_groups.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:00 2a "Volumes" 15:52:00 Volume Group Sources SELECT ID, VOLUME_IDS, DISPLAY_NAME, TIME_CREATED, COMPARTMENT_ID, SOURCE_DETAILS$TYPE, SOURCE_DETAILS$VOLUME_IDS FROM OCI360_VOLGROUP t1 15:52:00 2a.37 15:52:00 2a "00053_oci360_2a_37_volume_group_sources.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:02 2a "Volumes" 15:52:02 Volumes without a backup policy SELECT jt.DISPLAY_NAME, jt.IS_HYDRATED, jt.SIZE_IN_GBS, jt.VPUS_PER_GB, tcomp.NAME COMPARTMENT_NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, jt.ID FROM OCI360_VOLUMES jt, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign WHERE jt.COMPARTMENT_ID = tcomp.ID AND jt.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.ASSET_ID is null ORDER BY COMPARTMENT_NAME, jt.TIME_CREATED DESC 15:52:02 2a.38 15:52:03 2a "00054_oci360_2a_38_volumes_without_a_backup_policy.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:05 2a "Volumes" 15:52:05 Volumes without backup in last 30 days SELECT jt.DISPLAY_NAME, jt.IS_HYDRATED, jt.SIZE_IN_MBS, jt.VPUS_PER_GB, jt.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, max(to_timestamp_tz(tbkp.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) LATEST_BACKUP, jt.ID FROM OCI360_VOLUMES jt, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign, (select distinct id, display_name policy_name from OCI360_BKP_POLICY) tbkppol, OCI360_BACKUPS tbkp WHERE jt.COMPARTMENT_ID = tcomp.ID AND jt.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.POLICY_ID = tbkppol.ID (+) AND jt.ID = tbkp.volume_id (+) AND tbkp.LIFECYCLE_STATE (+) = 'AVAILABLE' GROUP BY jt.DISPLAY_NAME, jt.IS_HYDRATED, jt.SIZE_IN_MBS, jt.VPUS_PER_GB, jt.TIME_CREATED, tcomp.NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, jt.ID HAVING max(to_timestamp_tz(tbkp.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) <= to_date('2020-07-01','YYYY-MM-DD') - 30 OR max(to_timestamp_tz(tbkp.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) is null ORDER BY COMPARTMENT_NAME, LATEST_BACKUP DESC NULLS LAST 15:52:05 2a.39 15:52:05 2a "00055_oci360_2a_39_volumes_without_backup_in_last_30_days.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:07 2a "Volumes" 15:52:07 Volumes latest backup SELECT jt.DISPLAY_NAME, jt.IS_HYDRATED, jt.SIZE_IN_MBS, jt.VPUS_PER_GB, jt.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, max(to_timestamp_tz(tbkp1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) LATEST_FULL, max(to_timestamp_tz(tbkp2.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) LATEST_INCR, jt.ID FROM OCI360_VOLUMES jt, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign, (select distinct id, display_name policy_name from OCI360_BKP_POLICY) tbkppol, OCI360_BACKUPS tbkp1, OCI360_BACKUPS tbkp2 WHERE jt.COMPARTMENT_ID = tcomp.ID AND jt.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.POLICY_ID = tbkppol.ID (+) AND jt.ID = tbkp1.volume_id (+) AND jt.ID = tbkp2.volume_id (+) AND tbkp1.LIFECYCLE_STATE (+) = 'AVAILABLE' AND tbkp1.TYPE (+) = 'FULL' AND tbkp2.LIFECYCLE_STATE (+) = 'AVAILABLE' AND tbkp2.TYPE (+) = 'INCREMENTAL' GROUP BY jt.DISPLAY_NAME, jt.IS_HYDRATED, jt.SIZE_IN_MBS, jt.VPUS_PER_GB, jt.TIME_CREATED, tcomp.NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, jt.ID ORDER BY COMPARTMENT_NAME, LATEST_FULL DESC NULLS LAST 15:52:07 2a.40 15:52:08 2a "00056_oci360_2a_40_volumes_latest_backup.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:14 2a "Volumes" 15:52:14 Volumes Backup Size Percentile SELECT jt.DISPLAY_NAME, jt.IS_HYDRATED, jt.SIZE_IN_GBS, jt.VPUS_PER_GB, jt.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, /* FULL */ MAX(tbkp1.unique_size_in_gbs) full_unique_max, /* INCR */ MAX(tbkp2.unique_size_in_gbs) incr_unique_max, PERCENTILE_DISC(0.75) WITHIN GROUP (ORDER BY tbkp2.unique_size_in_gbs) incr_unique_75, ROUND(AVG(tbkp2.unique_size_in_gbs), 1) incr_unique_avg, jt.ID FROM OCI360_VOLUMES jt, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign, (select distinct id, display_name policy_name from OCI360_BKP_POLICY) tbkppol, OCI360_BACKUPS tbkp1, OCI360_BACKUPS tbkp2 WHERE jt.COMPARTMENT_ID = tcomp.ID AND jt.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.POLICY_ID = tbkppol.ID (+) AND jt.ID = tbkp1.volume_id (+) AND jt.ID = tbkp2.volume_id (+) AND tbkp1.LIFECYCLE_STATE (+) = 'AVAILABLE' AND tbkp1.TYPE (+) = 'FULL' AND tbkp2.LIFECYCLE_STATE (+) = 'AVAILABLE' AND tbkp2.TYPE (+) = 'INCREMENTAL' GROUP BY jt.DISPLAY_NAME, jt.IS_HYDRATED, jt.SIZE_IN_GBS, jt.VPUS_PER_GB, jt.TIME_CREATED, tcomp.NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, jt.ID ORDER BY COMPARTMENT_NAME, jt.TIME_CREATED DESC 15:52:14 2a.41 15:52:15 2a "00057_oci360_2a_41_volumes_backup_size_percentile.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:23 2b "Volumes Backups" 15:52:23 Volume Backups - Available SELECT t2.display_name VOLUME_NAME, t1.type, t1.size_in_gbs, t1.size_in_mbs, t1.source_type, t1.display_name, t1.time_created, t3.name COMPARTMENT_NAME, t1.expiration_time, t1.lifecycle_state, t1.unique_size_in_gbs, t1.unique_size_in_mbs, t1.time_request_received, t1.volume_id, t1.id FROM OCI360_BACKUPS t1, OCI360_VOLUMES t2, OCI360_COMPARTMENTS t3 WHERE t1.lifecycle_state = 'AVAILABLE' AND t1.volume_id = t2.id (+) AND t1.compartment_id = t3.id (+) 15:52:23 2b.42 15:52:23 2b "00058_oci360_2b_42_volume_backups_available.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:25 2b "Volumes Backups" 15:52:25 Volume Backups - Not Available SELECT t2.display_name VOLUME_NAME, t1.type, t1.size_in_gbs, t1.size_in_mbs, t1.source_type, t1.display_name, t1.time_created, t3.name COMPARTMENT_NAME, t1.expiration_time, t1.lifecycle_state, t1.unique_size_in_gbs, t1.unique_size_in_mbs, t1.time_request_received, t1.volume_id, t1.id FROM OCI360_BACKUPS t1, OCI360_VOLUMES t2, OCI360_COMPARTMENTS t3 WHERE t1.lifecycle_state != 'AVAILABLE' AND t1.volume_id = t2.id (+) AND t1.compartment_id = t3.id (+) 15:52:25 2b.43 15:52:25 2b "00059_oci360_2b_43_volume_backups_not_available.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:27 2b "Volumes Backups" 15:52:27 Backup Policies SELECT t1.* FROM OCI360_BKP_POLICY t1 15:52:27 2b.44 15:52:28 2b "00060_oci360_2b_44_backup_policies.html" 9 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:30 2b "Volumes Backups" 15:52:30 Backup Policies Assignments SELECT t1.* FROM OCI360_BKP_POLICY_ASSIGN t1 15:52:30 2b.45 15:52:31 2b "00061_oci360_2b_45_backup_policies_assignments.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:33 2b "Volumes Backups" 15:52:33 Volume Group Backups SELECT distinct ID, TYPE, SIZE_IN_GBS, SIZE_IN_MBS, DISPLAY_NAME, TIME_CREATED, COMPARTMENT_ID, LIFECYCLE_STATE, VOLUME_GROUP_ID, UNIQUE_SIZE_IN_GBS, UNIQUE_SIZE_IN_MBS, TIME_REQUEST_RECEIVED FROM OCI360_VOLGROUP_BKP t1 15:52:33 2b.46 15:52:33 2b "00062_oci360_2b_46_volume_group_backups.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:36 2b "Volumes Backups" 15:52:36 Volume Group Backups - Volume Backup IDs SELECT ID, TYPE, DISPLAY_NAME, COMPARTMENT_ID, VOLUME_BACKUP_IDS FROM OCI360_VOLGROUP_BKP t1 15:52:36 2b.47 15:52:37 2b "00063_oci360_2b_47_volume_group_backups_volume_backup_ids.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:39 2b "Volumes Backups" 15:52:39 Incremental Vol Backups without a prior Full SELECT t1.display_name BACKUP_NAME, t2.display_name ASSET_NAME, 'Volume' ASSET_TYPE, t1.type, t1.volume_id asset_id, t1.size_in_gbs, t1.source_type, t1.time_created, t1.compartment_id, t1.expiration_time, t1.lifecycle_state, t1.unique_size_in_gbs, t1.time_request_received, t1.id FROM OCI360_BACKUPS t1, OCI360_VOLUMES t2 WHERE t1.type='INCREMENTAL' AND t1.lifecycle_state='AVAILABLE' AND t1.volume_id = t2.id (+) AND NOT EXISTS (SELECT 1 FROM OCI360_BACKUPS t3 WHERE t1.type='FULL' AND t1.lifecycle_state='AVAILABLE' AND t1.volume_id=t3.volume_id AND to_timestamp_tz(t1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') > to_timestamp_tz(t3.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ) 15:52:39 2b.48 15:52:40 2b "00064_oci360_2b_48_incremental_vol_backups_without_a_prior_full.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:44 2b "Volumes Backups" 15:52:44 Backups for terminated Volumes SELECT t1.display_name BACKUP_NAME, t2.display_name ASSET_NAME, 'Volume' ASSET_TYPE, t1.type, t1.volume_id asset_id, t1.size_in_gbs, t1.source_type, t1.time_created, t1.compartment_id, t1.expiration_time, t1.lifecycle_state, t1.unique_size_in_gbs, t1.time_request_received, t1.id FROM OCI360_BACKUPS t1, OCI360_VOLUMES t2 WHERE t1.lifecycle_state='AVAILABLE' AND t1.volume_id = t2.id (+) AND t2.lifecycle_state (+) != 'TERMINATED' AND t2.id is null 15:52:44 2b.49 15:52:45 2b "00065_oci360_2b_49_backups_for_terminated_volumes.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:47 2b "Volumes Backups" 15:52:47 Total Volume Backup Forecast (By Volume) WITH days_in_future as ( SELECT vdate, decode(to_number(to_char (vdate, 'd', 'nls_date_language=english')),1,1,0) is_sunday, decode(vdate,trunc(vdate,'MM'),1,0) is_month_first_day, decode(vdate,trunc(vdate,'YYYY'),1,0) is_year_first_day FROM (SELECT trunc(sysdate) + rownum vdate FROM dual CONNECT BY LEVEL <= 366*6 /* 6 Years */ ) ), days_in_future_period as ( SELECT vdate, case when is_sunday+is_month_first_day+is_year_first_day = 0 then 'ONE_DAY' when is_sunday=1 and is_month_first_day+is_year_first_day = 0 then 'ONE_WEEK' when is_month_first_day=1 and is_year_first_day = 0 then 'ONE_MONTH' else 'ONE_YEAR' end period FROM days_in_future ), bkp_policies as ( SELECT distinct id policy_id, display_name policy_name, schedules$period period, schedules$backup_type type, schedules$retention_seconds retention_seconds FROM OCI360_BKP_POLICY ), bkps_in_future as ( select t2.policy_name, t2.policy_id, t1.period, t2.type, t1.vdate creation_date, t1.vdate+ (t2.retention_seconds/(60*60*24)) expire_date FROM days_in_future_period t1, bkp_policies t2 WHERE t1.period=t2.period ) , bkps as ( select jt.DISPLAY_NAME VOLUME_NAME, jt.IS_HYDRATED, jt.SIZE_IN_GBS, jt.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tas.creation_date, tas.expire_date, jt.ID from bkps_in_future tas, OCI360_VOLUMES jt, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign WHERE jt.COMPARTMENT_ID = tcomp.ID AND jt.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.POLICY_ID = tas.POLICY_ID (+) UNION ALL SELECT jt.DISPLAY_NAME VOLUME_NAME, jt.IS_HYDRATED, jt.SIZE_IN_GBS, jt.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, cast(to_timestamp_tz(t1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) creation_date, nvl(cast(to_timestamp_tz(t1.expiration_time,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE),sysdate+10000) expire_date, jt.ID FROM OCI360_BACKUPS t1, OCI360_VOLUMES jt, OCI360_COMPARTMENTS tcomp WHERE t1.lifecycle_state = 'AVAILABLE' AND t1.volume_id = jt.id (+) AND t1.compartment_id = tcomp.id ) select VOLUME_NAME, IS_HYDRATED, SIZE_IN_GBS, TIME_CREATED, COMPARTMENT_NAME, LIFECYCLE_STATE, VOLUME_GROUP_ID, AVAILABILITY_DOMAIN, SUM(CASE WHEN SYSDATE BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) TODAY, SUM(CASE WHEN ADD_MONTHS(SYSDATE,1) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_1MONTH_BKPS, SUM(CASE WHEN ADD_MONTHS(SYSDATE,2) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_2MONTH_BKPS, SUM(CASE WHEN ADD_MONTHS(SYSDATE,3) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_3MONTH_BKPS, SUM(CASE WHEN ADD_MONTHS(SYSDATE,12) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_YEAR_BKPS, SUM(CASE WHEN ADD_MONTHS(SYSDATE,24) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_2YEAR_BKPS, SUM(CASE WHEN ADD_MONTHS(SYSDATE,60) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_5YEAR_BKPS, ID from bkps GROUP BY VOLUME_NAME, IS_HYDRATED, SIZE_IN_GBS, TIME_CREATED, COMPARTMENT_NAME, LIFECYCLE_STATE, VOLUME_GROUP_ID, AVAILABILITY_DOMAIN, ID 15:52:47 2b.50 15:52:47 2b "00066_oci360_2b_50_total_volume_backup_forecast_by_volume.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:48 2b "Volumes Backups" 15:52:48 Total Volume Backups Forecast WITH days_in_future as ( SELECT vdate, decode(to_number(to_char (vdate, 'd', 'nls_date_language=english')),1,1,0) is_sunday, decode(vdate,trunc(vdate,'MM'),1,0) is_month_first_day, decode(vdate,trunc(vdate,'YYYY'),1,0) is_year_first_day FROM (SELECT trunc(sysdate) + rownum vdate FROM dual CONNECT BY LEVEL <= 366*6 /* 6 Years */ ) ), days_in_future_period as ( SELECT vdate, case when is_sunday+is_month_first_day+is_year_first_day = 0 then 'ONE_DAY' when is_sunday=1 and is_month_first_day+is_year_first_day = 0 then 'ONE_WEEK' when is_month_first_day=1 and is_year_first_day = 0 then 'ONE_MONTH' else 'ONE_YEAR' end period FROM days_in_future ), bkp_policies as ( SELECT distinct id policy_id, display_name policy_name, schedules$period period, schedules$backup_type type, schedules$retention_seconds retention_seconds FROM OCI360_BKP_POLICY ), bkps_in_future as ( select t2.policy_name, t2.policy_id, t1.period, t2.type, t1.vdate creation_date, t1.vdate+ (t2.retention_seconds/(60*60*24)) expire_date FROM days_in_future_period t1, bkp_policies t2 WHERE t1.period=t2.period ) , bkps as ( select tas.creation_date, tas.expire_date, tas.type from bkps_in_future tas, OCI360_VOLUMES jt, OCI360_BKP_POLICY_ASSIGN tbkppolassign WHERE jt.ID = tbkppolassign.ASSET_ID AND tbkppolassign.POLICY_ID = tas.POLICY_ID UNION ALL SELECT cast(to_timestamp_tz(t1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) creation_date, nvl(cast(to_timestamp_tz(t1.expiration_time,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE),sysdate+10000) expire_date, t1.type FROM OCI360_BACKUPS t1 WHERE t1.lifecycle_state = 'AVAILABLE' ), bkps_sum as ( select vord, vdate, type, SUM(CASE WHEN vdate BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) TOTAL from bkps, ( SELECT rownum vord, trunc(sysdate) + ((ROWNUM-1)*10) vdate /* (10 in 10 days) */ FROM dual CONNECT BY LEVEL <= (366*6) /* 6 Years */ ) days where vdate <= ADD_MONTHS(sysdate,12*6) /* 6 Years */ group by vord, vdate, type ) select vord snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI:SS') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI:SS') end_time, SUM(total) line1, SUM(CASE WHEN type = 'INCREMENTAL' THEN total ELSE 0 END) line2, SUM(CASE WHEN type = 'FULL' THEN total ELSE 0 END) line3, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from bkps_sum group by vord, vdate order by vord asc 15:52:48 2b.51 15:52:49 2b "00067_oci360_2b_51_total_volume_backups_forecast.html" 15:52:51 2b "00068_oci360_2b_51_total_volume_backups_forecast_line_chart.html" 220 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:52 2b "Volumes Backups" 15:52:52 Total Volume Backups Size Forecast - Avg WITH days_in_future as ( SELECT vdate, decode(to_number(to_char (vdate, 'd', 'nls_date_language=english')),1,1,0) is_sunday, decode(vdate,trunc(vdate,'MM'),1,0) is_month_first_day, decode(vdate,trunc(vdate,'YYYY'),1,0) is_year_first_day FROM (SELECT trunc(sysdate) + rownum vdate FROM dual CONNECT BY LEVEL <= 366*6 /* 6 Years */ ) ), days_in_future_period as ( SELECT vdate, case when is_sunday+is_month_first_day+is_year_first_day = 0 then 'ONE_DAY' when is_sunday=1 and is_month_first_day+is_year_first_day = 0 then 'ONE_WEEK' when is_month_first_day=1 and is_year_first_day = 0 then 'ONE_MONTH' else 'ONE_YEAR' end period FROM days_in_future ), bkp_policies as ( SELECT distinct id policy_id, display_name policy_name, schedules$period period, schedules$backup_type type, schedules$retention_seconds retention_seconds FROM OCI360_BKP_POLICY ), bkps_in_future as ( select t2.policy_name, t2.policy_id, t1.period, t2.type, t1.vdate creation_date, t1.vdate+ (t2.retention_seconds/(60*60*24)) expire_date FROM days_in_future_period t1, bkp_policies t2 WHERE t1.period=t2.period ) , bkp_size_estimation as ( select DECODE(type,'INCREMENTAL',avg(unique_size_in_gbs),'FULL',max(unique_size_in_gbs)) est_unique_size_in_gbs, type, volume_id FROM OCI360_BACKUPS WHERE lifecycle_state = 'AVAILABLE' GROUP BY type, volume_id ), bkps as ( select tas.creation_date, tas.expire_date, bse.est_unique_size_in_gbs unique_size_in_gbs, tas.type from bkps_in_future tas, OCI360_VOLUMES jt, OCI360_BKP_POLICY_ASSIGN tbkppolassign, bkp_size_estimation bse WHERE jt.ID = tbkppolassign.ASSET_ID AND tbkppolassign.POLICY_ID = tas.POLICY_ID AND jt.ID = bse.volume_id (+) AND tas.type = bse.type (+) UNION ALL SELECT cast(to_timestamp_tz(t1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) creation_date, nvl(cast(to_timestamp_tz(t1.expiration_time,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE),sysdate+10000) expire_date, unique_size_in_gbs, t1.type FROM OCI360_BACKUPS t1 WHERE t1.lifecycle_state = 'AVAILABLE' ), bkps_sum_day as ( select vdate, type, SUM(CASE WHEN vdate BETWEEN creation_date AND expire_date THEN unique_size_in_gbs ELSE 0 END) TOTAL from bkps, ( SELECT trunc(sysdate) + ((ROWNUM-1)*10) vdate /* (10 in 10 days) */ FROM dual CONNECT BY LEVEL <= (366*6) /* 6 Years */ ) days where vdate <= ADD_MONTHS(sysdate,12*6) /* 6 Years */ group by vdate, type ), bkps_sum_month as ( select trunc(vdate,'mm') vdate, type, max(total) total from bkps_sum_day group by trunc(vdate,'mm'), type ), result as ( select rank() over (order by vdate asc) snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI:SS') begin_time, TO_CHAR(ADD_MONTHS(vdate,1),'YYYY-MM-DD HH24:MI:SS') end_time, CEIL(SUM(total)) line1, CEIL(SUM(CASE WHEN type = 'INCREMENTAL' THEN total ELSE 0 END)) line2, CEIL(SUM(CASE WHEN type = 'FULL' THEN total ELSE 0 END)) line3 from bkps_sum_month group by vdate ) select snap_id, begin_time, end_time, line1, line2, line3, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result order by snap_id 15:52:52 2b.52 15:52:52 2b "00069_oci360_2b_52_total_volume_backups_size_forecast_avg.html" 15:52:54 2b "00070_oci360_2b_52_total_volume_backups_size_forecast_avg_line_chart.html" 73 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:55 2b "Volumes Backups" 15:52:55 Total Volume Backups Cost Forecast - Avg WITH days_in_future as ( SELECT vdate, decode(to_number(to_char (vdate, 'd', 'nls_date_language=english')),1,1,0) is_sunday, decode(vdate,trunc(vdate,'MM'),1,0) is_month_first_day, decode(vdate,trunc(vdate,'YYYY'),1,0) is_year_first_day FROM (SELECT trunc(sysdate) + rownum vdate FROM dual CONNECT BY LEVEL <= 366*6 /* 6 Years */ ) ), days_in_future_period as ( SELECT vdate, case when is_sunday+is_month_first_day+is_year_first_day = 0 then 'ONE_DAY' when is_sunday=1 and is_month_first_day+is_year_first_day = 0 then 'ONE_WEEK' when is_month_first_day=1 and is_year_first_day = 0 then 'ONE_MONTH' else 'ONE_YEAR' end period FROM days_in_future ), bkp_policies as ( SELECT distinct id policy_id, display_name policy_name, schedules$period period, schedules$backup_type type, schedules$retention_seconds retention_seconds FROM OCI360_BKP_POLICY ), bkps_in_future as ( select t2.policy_name, t2.policy_id, t1.period, t2.type, t1.vdate creation_date, t1.vdate+ (t2.retention_seconds/(60*60*24)) expire_date FROM days_in_future_period t1, bkp_policies t2 WHERE t1.period=t2.period ) , bkp_size_estimation as ( select DECODE(type,'INCREMENTAL',avg(unique_size_in_gbs),'FULL',max(unique_size_in_gbs)) est_unique_size_in_gbs, type, volume_id FROM OCI360_BACKUPS WHERE lifecycle_state = 'AVAILABLE' GROUP BY type, volume_id ), bkps as ( select tas.creation_date, tas.expire_date, bse.est_unique_size_in_gbs unique_size_in_gbs, tas.type from bkps_in_future tas, OCI360_VOLUMES jt, OCI360_BKP_POLICY_ASSIGN tbkppolassign, bkp_size_estimation bse WHERE jt.ID = tbkppolassign.ASSET_ID AND tbkppolassign.POLICY_ID = tas.POLICY_ID AND jt.ID = bse.volume_id (+) AND tas.type = bse.type (+) UNION ALL SELECT cast(to_timestamp_tz(t1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) creation_date, nvl(cast(to_timestamp_tz(t1.expiration_time,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE),sysdate+10000) expire_date, unique_size_in_gbs, t1.type FROM OCI360_BACKUPS t1 WHERE t1.lifecycle_state = 'AVAILABLE' ), bkps_sum_day as ( select vdate, type, SUM(CASE WHEN vdate BETWEEN creation_date AND expire_date THEN unique_size_in_gbs ELSE 0 END) TOTAL from bkps, ( SELECT trunc(sysdate) + ((ROWNUM-1)*10) vdate /* (10 in 10 days) */ FROM dual CONNECT BY LEVEL <= (366*6) /* 6 Years */ ) days where vdate <= ADD_MONTHS(sysdate,12*6) /* 6 Years */ group by vdate, type ), bkps_sum_month as ( select trunc(vdate,'mm') vdate, type, max(total) total from bkps_sum_day group by trunc(vdate,'mm'), type ), result as ( SELECT rank() over (order by vdate asc) snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI:SS') begin_time, TO_CHAR(ADD_MONTHS(vdate,1),'YYYY-MM-DD HH24:MI:SS') end_time, ROUND(SUM(total)*MF,2) line1, ROUND(SUM(CASE WHEN type = 'INCREMENTAL' THEN total ELSE 0 END)*MF,2) line2, ROUND(SUM(CASE WHEN type = 'FULL' THEN total ELSE 0 END)*MF,2) line3 FROM bkps_sum_month, "OCI360_PRICING" WHERE subject = 'STORAGE' AND inst_type = 'Object Storage' /* Backups are encrypted and stored in Oracle Cloud Infrastructure Object Storage */ GROUP BY vdate, MF ) select snap_id, begin_time, end_time, line1, line2, line3, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result order by snap_id 15:52:55 2b.53 15:52:56 2b "00071_oci360_2b_53_total_volume_backups_cost_forecast_avg.html" 15:52:57 2b "00072_oci360_2b_53_total_volume_backups_cost_forecast_avg_line_chart.html" 73 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:52:59 2c "Boot-Volumes" 15:52:59 Boot-Volumes SELECT tb.DISPLAY_NAME BOOT_VOLUME_NAME, timg.DISPLAY_NAME IMAGE_NAME, tb.IS_HYDRATED, tb.SIZE_IN_GBS, tb.SIZE_IN_MBS, tb.VPUS_PER_GB, tb.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, tb."SOURCE_DETAILS$ID", tb."SOURCE_DETAILS$TYPE", tb.LIFECYCLE_STATE, tb.VOLUME_GROUP_ID, tb.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, tb.ID FROM OCI360_BVOLUMES tb, OCI360_COMPARTMENTS tcomp, OCI360_IMAGES timg, OCI360_BKP_POLICY_ASSIGN tbkppolassign, (select distinct id, display_name policy_name from OCI360_BKP_POLICY) tbkppol WHERE tb.COMPARTMENT_ID = tcomp.ID AND tb.IMAGE_ID = timg.ID (+) AND tb.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.POLICY_ID = tbkppol.ID (+) ORDER BY COMPARTMENT_NAME, tb.TIME_CREATED DESC 15:52:59 2c.54 15:53:00 2c "00073_oci360_2c_54_bootvolumes.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:02 2c "Boot-Volumes" 15:53:02 Unallocated Boot-Volumes with t1 as (select /*+ materialize */ * from OCI360_BVOLUMES), t2 as (select /*+ materialize */ * from OCI360_BV_ATTACHS) SELECT ID, IMAGE_ID, KMS_KEY_ID, IS_HYDRATED, SIZE_IN_GBS, SIZE_IN_MBS, VPUS_PER_GB, DISPLAY_NAME, TIME_CREATED, COMPARTMENT_ID, SOURCE_DETAILS$ID, SOURCE_DETAILS$TYPE, LIFECYCLE_STATE, VOLUME_GROUP_ID, AVAILABILITY_DOMAIN FROM t1 WHERE not exists (SELECT 1 FROM t2 WHERE t1.id = t2.boot_volume_id and t2.lifecycle_state = 'ATTACHED') 15:53:02 2c.55 15:53:03 2c "00074_oci360_2c_55_unallocated_bootvolumes.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:10 2c "Boot-Volumes" 15:53:10 Boot-Volume Attachments SELECT t1.* FROM OCI360_BV_ATTACHS t1 15:53:10 2c.56 15:53:12 2c "00075_oci360_2c_56_bootvolume_attachments.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:16 2c "Boot-Volumes" 15:53:16 Boot-Volumes without a backup policy SELECT tb.DISPLAY_NAME BOOT_VOLUME_NAME, tb.IS_HYDRATED, tb.SIZE_IN_GBS, tb.VPUS_PER_GB, tb.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, tb.LIFECYCLE_STATE, tb.VOLUME_GROUP_ID, tb.AVAILABILITY_DOMAIN, tb.ID FROM OCI360_BVOLUMES tb, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign WHERE tb.COMPARTMENT_ID = tcomp.ID AND tb.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.ASSET_ID is null ORDER BY COMPARTMENT_NAME, tb.TIME_CREATED DESC 15:53:16 2c.57 15:53:17 2c "00076_oci360_2c_57_bootvolumes_without_a_backup_policy.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:19 2c "Boot-Volumes" 15:53:19 Boot-Volumes without backup in last 30 days SELECT tb.DISPLAY_NAME BOOT_VOLUME_NAME, tb.IS_HYDRATED, tb.SIZE_IN_GBS, tb.VPUS_PER_GB, tb.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, tb.LIFECYCLE_STATE, tb.VOLUME_GROUP_ID, tb.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, max(to_timestamp_tz(tbkp.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) LATEST_BACKUP, tb.ID FROM OCI360_BVOLUMES tb, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign, (select distinct id, display_name policy_name from OCI360_BKP_POLICY) tbkppol, OCI360_BV_BACKUPS tbkp WHERE tb.COMPARTMENT_ID = tcomp.ID AND tb.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.POLICY_ID = tbkppol.ID (+) AND tb.ID = tbkp.boot_volume_id (+) AND tbkp.LIFECYCLE_STATE (+) = 'AVAILABLE' GROUP BY tb.DISPLAY_NAME, tb.IS_HYDRATED, tb.SIZE_IN_GBS, tb.VPUS_PER_GB, tb.TIME_CREATED, tcomp.NAME, tb.LIFECYCLE_STATE, tb.VOLUME_GROUP_ID, tb.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, tb.ID HAVING max(to_timestamp_tz(tbkp.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) <= to_date('2020-07-01','YYYY-MM-DD') - 30 OR max(to_timestamp_tz(tbkp.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) is null ORDER BY COMPARTMENT_NAME, LATEST_BACKUP DESC NULLS LAST 15:53:19 2c.58 15:53:19 2c "00077_oci360_2c_58_bootvolumes_without_backup_in_last_30_days.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:21 2c "Boot-Volumes" 15:53:21 Boot-Volumes latest backup SELECT tb.DISPLAY_NAME BOOT_VOLUME_NAME, tb.IS_HYDRATED, tb.SIZE_IN_GBS, tb.VPUS_PER_GB, tb.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, tb.LIFECYCLE_STATE, tb.VOLUME_GROUP_ID, tb.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, max(to_timestamp_tz(tbkp1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) LATEST_FULL, max(to_timestamp_tz(tbkp2.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) LATEST_INCR, tb.ID FROM OCI360_BVOLUMES tb, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign, (select distinct id, display_name policy_name from OCI360_BKP_POLICY) tbkppol, OCI360_BV_BACKUPS tbkp1, OCI360_BV_BACKUPS tbkp2 WHERE tb.COMPARTMENT_ID = tcomp.ID AND tb.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.POLICY_ID = tbkppol.ID (+) AND tb.ID = tbkp1.boot_volume_id (+) AND tb.ID = tbkp2.boot_volume_id (+) AND tbkp1.LIFECYCLE_STATE (+) = 'AVAILABLE' AND tbkp1.TYPE (+) = 'FULL' AND tbkp2.LIFECYCLE_STATE (+) = 'AVAILABLE' AND tbkp2.TYPE (+) = 'INCREMENTAL' GROUP BY tb.DISPLAY_NAME, tb.IS_HYDRATED, tb.SIZE_IN_GBS, tb.VPUS_PER_GB, tb.TIME_CREATED, tcomp.NAME, tb.LIFECYCLE_STATE, tb.VOLUME_GROUP_ID, tb.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, tb.ID ORDER BY COMPARTMENT_NAME, LATEST_FULL DESC NULLS LAST 15:53:21 2c.59 15:53:22 2c "00078_oci360_2c_59_bootvolumes_latest_backup.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:23 2c "Boot-Volumes" 15:53:23 Boot-Volumes Backup Size Percentile SELECT jt.DISPLAY_NAME, jt.IS_HYDRATED, jt.SIZE_IN_GBS, jt.VPUS_PER_GB, jt.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, /* FULL */ MAX(tbkp1.unique_size_in_gbs) full_unique_max, /* INCR */ MAX(tbkp2.unique_size_in_gbs) incr_unique_max, PERCENTILE_DISC(0.75) WITHIN GROUP (ORDER BY tbkp2.unique_size_in_gbs) incr_unique_75, ROUND(AVG(tbkp2.unique_size_in_gbs), 1) incr_unique_avg, jt.ID FROM OCI360_BVOLUMES jt, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign, (select distinct id, display_name policy_name from OCI360_BKP_POLICY) tbkppol, OCI360_BV_BACKUPS tbkp1, OCI360_BV_BACKUPS tbkp2 WHERE jt.COMPARTMENT_ID = tcomp.ID AND jt.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.POLICY_ID = tbkppol.ID (+) AND jt.ID = tbkp1.boot_volume_id (+) AND jt.ID = tbkp2.boot_volume_id (+) AND tbkp1.LIFECYCLE_STATE (+) = 'AVAILABLE' AND tbkp1.TYPE (+) = 'FULL' AND tbkp2.LIFECYCLE_STATE (+) = 'AVAILABLE' AND tbkp2.TYPE (+) = 'INCREMENTAL' GROUP BY jt.DISPLAY_NAME, jt.IS_HYDRATED, jt.SIZE_IN_GBS, jt.VPUS_PER_GB, jt.TIME_CREATED, tcomp.NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tbkppol.POLICY_NAME, jt.ID ORDER BY COMPARTMENT_NAME, jt.TIME_CREATED DESC 15:53:23 2c.60 15:53:24 2c "00079_oci360_2c_60_bootvolumes_backup_size_percentile.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:26 2d "Boot-Volumes Backups" 15:53:26 Boot-Volume Backups - Available SELECT t2.display_name BOOTVOLUME_NAME, t1.type, t1.size_in_gbs, t1.source_type, t1.display_name, t1.time_created, t3.name COMPARTMENT_NAME, t1.expiration_time, t1.lifecycle_state, t1.unique_size_in_gbs, t1.time_request_received, t1.image_id, t1.boot_volume_id, t1.id FROM OCI360_BV_BACKUPS t1, OCI360_BVOLUMES t2, OCI360_COMPARTMENTS t3 WHERE t1.lifecycle_state = 'AVAILABLE' AND t1.boot_volume_id = t2.id (+) AND t1.compartment_id = t3.id (+) 15:53:26 2d.61 15:53:26 2d "00080_oci360_2d_61_bootvolume_backups_available.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:28 2d "Boot-Volumes Backups" 15:53:28 Boot-Volume Backups - Not Available SELECT t2.display_name BOOTVOLUME_NAME, t1.type, t1.size_in_gbs, t1.source_type, t1.display_name, t1.time_created, t3.name COMPARTMENT_NAME, t1.expiration_time, t1.lifecycle_state, t1.unique_size_in_gbs, t1.time_request_received, t1.image_id, t1.boot_volume_id, t1.id FROM OCI360_BV_BACKUPS t1, OCI360_BVOLUMES t2, OCI360_COMPARTMENTS t3 WHERE t1.lifecycle_state != 'AVAILABLE' AND t1.boot_volume_id = t2.id (+) AND t1.compartment_id = t3.id (+) 15:53:28 2d.62 15:53:29 2d "00081_oci360_2d_62_bootvolume_backups_not_available.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:30 2d "Boot-Volumes Backups" 15:53:30 Incremental BV Backups without a prior Full SELECT t1.display_name BACKUP_NAME, t2.display_name ASSET_NAME, t1.type, t1.boot_volume_id asset_id, t1.size_in_gbs, t1.source_type, t1.time_created, t1.compartment_id, t1.expiration_time, t1.lifecycle_state, t1.unique_size_in_gbs, t1.time_request_received, t1.id FROM OCI360_BV_BACKUPS t1, OCI360_BVOLUMES t2 WHERE t1.type='INCREMENTAL' AND t1.lifecycle_state='AVAILABLE' AND t1.boot_volume_id = t2.id (+) AND NOT EXISTS (SELECT 1 FROM OCI360_BV_BACKUPS t3 WHERE t1.type='FULL' AND t1.lifecycle_state='AVAILABLE' AND t1.boot_volume_id=t3.boot_volume_id AND to_timestamp_tz(t1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') > to_timestamp_tz(t3.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ) 15:53:30 2d.63 15:53:31 2d "00082_oci360_2d_63_incremental_bv_backups_without_a_prior_full.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:34 2d "Boot-Volumes Backups" 15:53:34 Backups for terminated BVs SELECT t1.display_name BACKUP_NAME, t2.display_name ASSET_NAME, 'Boot-Volume' ASSET_TYPE, t1.type, t1.boot_volume_id asset_id, t1.size_in_gbs, t1.source_type, t1.time_created, t1.compartment_id, t1.expiration_time, t1.lifecycle_state, t1.unique_size_in_gbs, t1.time_request_received, t1.id FROM OCI360_BV_BACKUPS t1, OCI360_BVOLUMES t2 WHERE t1.lifecycle_state='AVAILABLE' AND t1.boot_volume_id = t2.id (+) AND t2.lifecycle_state (+) != 'TERMINATED' AND t2.id is null 15:53:34 2d.64 15:53:35 2d "00083_oci360_2d_64_backups_for_terminated_bvs.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:39 2d "Boot-Volumes Backups" 15:53:39 Total Boot-Volume Backup Forecast (By BV) WITH days_in_future as ( SELECT vdate, decode(to_number(to_char (vdate, 'd', 'nls_date_language=english')),1,1,0) is_sunday, decode(vdate,trunc(vdate,'MM'),1,0) is_month_first_day, decode(vdate,trunc(vdate,'YYYY'),1,0) is_year_first_day FROM (SELECT trunc(sysdate) + rownum vdate FROM dual CONNECT BY LEVEL <= 366*6 /* 6 Years */ ) ), days_in_future_period as ( SELECT vdate, case when is_sunday+is_month_first_day+is_year_first_day = 0 then 'ONE_DAY' when is_sunday=1 and is_month_first_day+is_year_first_day = 0 then 'ONE_WEEK' when is_month_first_day=1 and is_year_first_day = 0 then 'ONE_MONTH' else 'ONE_YEAR' end period FROM days_in_future ), bkp_policies as ( SELECT id policy_id, display_name policy_name, schedules$period period, schedules$backup_type type, schedules$retention_seconds retention_seconds FROM OCI360_BKP_POLICY ), bkps_in_future as ( select t2.policy_name, t2.policy_id, t1.period, t2.type, t1.vdate creation_date, t1.vdate+ (t2.retention_seconds/(60*60*24)) expire_date FROM days_in_future_period t1, bkp_policies t2 WHERE t1.period=t2.period ) , bkps as ( select jt.DISPLAY_NAME BOOT_VOLUME_NAME, jt.IS_HYDRATED, jt.SIZE_IN_GBS, jt.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, tas.creation_date, tas.expire_date, jt.ID from bkps_in_future tas, OCI360_BVOLUMES jt, OCI360_COMPARTMENTS tcomp, OCI360_BKP_POLICY_ASSIGN tbkppolassign WHERE jt.COMPARTMENT_ID = tcomp.ID AND jt.ID = tbkppolassign.ASSET_ID (+) AND tbkppolassign.POLICY_ID = tas.POLICY_ID (+) UNION ALL SELECT jt.DISPLAY_NAME BOOT_VOLUME_NAME, jt.IS_HYDRATED, jt.SIZE_IN_GBS, jt.TIME_CREATED, tcomp.NAME COMPARTMENT_NAME, jt.LIFECYCLE_STATE, jt.VOLUME_GROUP_ID, jt.AVAILABILITY_DOMAIN, cast(to_timestamp_tz(t1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) creation_date, nvl(cast(to_timestamp_tz(t1.expiration_time,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE),sysdate+10000) expire_date, jt.ID FROM OCI360_BV_BACKUPS t1, OCI360_BVOLUMES jt, OCI360_COMPARTMENTS tcomp WHERE t1.lifecycle_state = 'AVAILABLE' AND t1.boot_volume_id = jt.id (+) AND t1.compartment_id = tcomp.id ) select BOOT_VOLUME_NAME, IS_HYDRATED, SIZE_IN_GBS, TIME_CREATED, COMPARTMENT_NAME, LIFECYCLE_STATE, VOLUME_GROUP_ID, AVAILABILITY_DOMAIN, SUM(CASE WHEN SYSDATE BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) TODAY, SUM(CASE WHEN ADD_MONTHS(SYSDATE,1) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_1MONTH_BKPS, SUM(CASE WHEN ADD_MONTHS(SYSDATE,2) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_2MONTH_BKPS, SUM(CASE WHEN ADD_MONTHS(SYSDATE,3) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_3MONTH_BKPS, SUM(CASE WHEN ADD_MONTHS(SYSDATE,12) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_YEAR_BKPS, SUM(CASE WHEN ADD_MONTHS(SYSDATE,24) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_2YEAR_BKPS, SUM(CASE WHEN ADD_MONTHS(SYSDATE,60) BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) NEXT_5YEAR_BKPS, ID from bkps GROUP BY BOOT_VOLUME_NAME, IS_HYDRATED, SIZE_IN_GBS, TIME_CREATED, COMPARTMENT_NAME, LIFECYCLE_STATE, VOLUME_GROUP_ID, AVAILABILITY_DOMAIN, ID 15:53:39 2d.65 15:53:40 2d "00084_oci360_2d_65_total_bootvolume_backup_forecast_by_bv.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:41 2d "Boot-Volumes Backups" 15:53:41 Total Boot-Volume Backups Forecast WITH days_in_future as ( SELECT vdate, decode(to_number(to_char (vdate, 'd', 'nls_date_language=english')),1,1,0) is_sunday, decode(vdate,trunc(vdate,'MM'),1,0) is_month_first_day, decode(vdate,trunc(vdate,'YYYY'),1,0) is_year_first_day FROM (SELECT trunc(sysdate) + rownum vdate FROM dual CONNECT BY LEVEL <= 366*6 /* 6 Years */ ) ), days_in_future_period as ( SELECT vdate, case when is_sunday+is_month_first_day+is_year_first_day = 0 then 'ONE_DAY' when is_sunday=1 and is_month_first_day+is_year_first_day = 0 then 'ONE_WEEK' when is_month_first_day=1 and is_year_first_day = 0 then 'ONE_MONTH' else 'ONE_YEAR' end period FROM days_in_future ), bkp_policies as ( SELECT id policy_id, display_name policy_name, schedules$period period, schedules$backup_type type, schedules$retention_seconds retention_seconds FROM OCI360_BKP_POLICY ), bkps_in_future as ( select t2.policy_name, t2.policy_id, t1.period, t2.type, t1.vdate creation_date, t1.vdate+ (t2.retention_seconds/(60*60*24)) expire_date FROM days_in_future_period t1, bkp_policies t2 WHERE t1.period=t2.period ) , bkps as ( select tas.creation_date, tas.expire_date, tas.type from bkps_in_future tas, OCI360_BVOLUMES jt, OCI360_BKP_POLICY_ASSIGN tbkppolassign WHERE jt.ID = tbkppolassign.ASSET_ID AND tbkppolassign.POLICY_ID = tas.POLICY_ID UNION ALL SELECT cast(to_timestamp_tz(t1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) creation_date, nvl(cast(to_timestamp_tz(t1.expiration_time,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE),sysdate+10000) expire_date, t1.type FROM OCI360_BV_BACKUPS t1 WHERE t1.lifecycle_state = 'AVAILABLE' ), bkps_sum as ( select vord, vdate, type, SUM(CASE WHEN vdate BETWEEN creation_date AND expire_date THEN 1 ELSE 0 END) TOTAL from bkps, ( SELECT rownum vord, trunc(sysdate) + ((ROWNUM-1)*10) vdate /* (10 in 10 days) */ FROM dual CONNECT BY LEVEL <= (366*6) /* 6 Years */ ) days where vdate <= ADD_MONTHS(sysdate,12*6) /* 6 Years */ group by vord, vdate, type ) select vord snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI:SS') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI:SS') end_time, SUM(total) line1, SUM(CASE WHEN type = 'INCREMENTAL' THEN total ELSE 0 END) line2, SUM(CASE WHEN type = 'FULL' THEN total ELSE 0 END) line3, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from bkps_sum group by vord, vdate order by vord asc 15:53:41 2d.66 15:53:41 2d "00085_oci360_2d_66_total_bootvolume_backups_forecast.html" 15:53:42 2d "00086_oci360_2d_66_total_bootvolume_backups_forecast_line_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:44 2d "Boot-Volumes Backups" 15:53:44 Total BV Backups Size Forecast - Avg WITH days_in_future as ( SELECT vdate, decode(to_number(to_char (vdate, 'd', 'nls_date_language=english')),1,1,0) is_sunday, decode(vdate,trunc(vdate,'MM'),1,0) is_month_first_day, decode(vdate,trunc(vdate,'YYYY'),1,0) is_year_first_day FROM (SELECT trunc(sysdate) + rownum vdate FROM dual CONNECT BY LEVEL <= 366*6 /* 6 Years */ ) ), days_in_future_period as ( SELECT vdate, case when is_sunday+is_month_first_day+is_year_first_day = 0 then 'ONE_DAY' when is_sunday=1 and is_month_first_day+is_year_first_day = 0 then 'ONE_WEEK' when is_month_first_day=1 and is_year_first_day = 0 then 'ONE_MONTH' else 'ONE_YEAR' end period FROM days_in_future ), bkp_policies as ( SELECT id policy_id, display_name policy_name, schedules$period period, schedules$backup_type type, schedules$retention_seconds retention_seconds FROM OCI360_BKP_POLICY ), bkps_in_future as ( select t2.policy_name, t2.policy_id, t1.period, t2.type, t1.vdate creation_date, t1.vdate+ (t2.retention_seconds/(60*60*24)) expire_date FROM days_in_future_period t1, bkp_policies t2 WHERE t1.period=t2.period ) , bkp_size_estimation as ( select DECODE(type,'INCREMENTAL',avg(unique_size_in_gbs),'FULL',max(unique_size_in_gbs)) est_unique_size_in_gbs, type, boot_volume_id FROM OCI360_BV_BACKUPS WHERE lifecycle_state = 'AVAILABLE' GROUP BY type, boot_volume_id ), bkps as ( select tas.creation_date, tas.expire_date, bse.est_unique_size_in_gbs unique_size_in_gbs, tas.type from bkps_in_future tas, OCI360_BVOLUMES jt, OCI360_BKP_POLICY_ASSIGN tbkppolassign, bkp_size_estimation bse WHERE jt.ID = tbkppolassign.ASSET_ID AND tbkppolassign.POLICY_ID = tas.POLICY_ID AND jt.ID = bse.boot_volume_id (+) AND tas.type = bse.type (+) UNION ALL SELECT cast(to_timestamp_tz(t1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) creation_date, nvl(cast(to_timestamp_tz(t1.expiration_time,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE),sysdate+10000) expire_date, unique_size_in_gbs, t1.type FROM OCI360_BV_BACKUPS t1 WHERE t1.lifecycle_state = 'AVAILABLE' ), bkps_sum_day as ( select vdate, type, SUM(CASE WHEN vdate BETWEEN creation_date AND expire_date THEN unique_size_in_gbs ELSE 0 END) TOTAL from bkps, ( SELECT trunc(sysdate) + ((ROWNUM-1)*10) vdate /* (10 in 10 days) */ FROM dual CONNECT BY LEVEL <= (366*6) /* 6 Years */ ) days where vdate <= ADD_MONTHS(sysdate,12*6) /* 6 Years */ group by vdate, type ), bkps_sum_month as ( select trunc(vdate,'mm') vdate, type, max(total) total from bkps_sum_day group by trunc(vdate,'mm'), type ), result as ( select rank() over (order by vdate asc) snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI:SS') begin_time, TO_CHAR(ADD_MONTHS(vdate,1),'YYYY-MM-DD HH24:MI:SS') end_time, CEIL(SUM(total)) line1, CEIL(SUM(CASE WHEN type = 'INCREMENTAL' THEN total ELSE 0 END)) line2, CEIL(SUM(CASE WHEN type = 'FULL' THEN total ELSE 0 END)) line3 from bkps_sum_month group by vdate ) select snap_id, begin_time, end_time, line1, line2, line3, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result order by snap_id 15:53:44 2d.67 15:53:45 2d "00087_oci360_2d_67_total_bv_backups_size_forecast_avg.html" 15:53:46 2d "00088_oci360_2d_67_total_bv_backups_size_forecast_avg_line_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:47 2d "Boot-Volumes Backups" 15:53:47 Total BV Backups Cost Forecast - Avg WITH days_in_future as ( SELECT vdate, decode(to_number(to_char (vdate, 'd', 'nls_date_language=english')),1,1,0) is_sunday, decode(vdate,trunc(vdate,'MM'),1,0) is_month_first_day, decode(vdate,trunc(vdate,'YYYY'),1,0) is_year_first_day FROM (SELECT trunc(sysdate) + rownum vdate FROM dual CONNECT BY LEVEL <= 366*6 /* 6 Years */ ) ), days_in_future_period as ( SELECT vdate, case when is_sunday+is_month_first_day+is_year_first_day = 0 then 'ONE_DAY' when is_sunday=1 and is_month_first_day+is_year_first_day = 0 then 'ONE_WEEK' when is_month_first_day=1 and is_year_first_day = 0 then 'ONE_MONTH' else 'ONE_YEAR' end period FROM days_in_future ), bkp_policies as ( SELECT id policy_id, display_name policy_name, schedules$period period, schedules$backup_type type, schedules$retention_seconds retention_seconds FROM OCI360_BKP_POLICY ), bkps_in_future as ( select t2.policy_name, t2.policy_id, t1.period, t2.type, t1.vdate creation_date, t1.vdate+ (t2.retention_seconds/(60*60*24)) expire_date FROM days_in_future_period t1, bkp_policies t2 WHERE t1.period=t2.period ) , bkp_size_estimation as ( select DECODE(type,'INCREMENTAL',avg(unique_size_in_gbs),'FULL',max(unique_size_in_gbs)) est_unique_size_in_gbs, type, boot_volume_id FROM OCI360_BV_BACKUPS WHERE lifecycle_state = 'AVAILABLE' GROUP BY type, boot_volume_id ), bkps as ( select tas.creation_date, tas.expire_date, bse.est_unique_size_in_gbs unique_size_in_gbs, tas.type from bkps_in_future tas, OCI360_BVOLUMES jt, OCI360_BKP_POLICY_ASSIGN tbkppolassign, bkp_size_estimation bse WHERE jt.ID = tbkppolassign.ASSET_ID AND tbkppolassign.POLICY_ID = tas.POLICY_ID AND jt.ID = bse.boot_volume_id (+) AND tas.type = bse.type (+) UNION ALL SELECT cast(to_timestamp_tz(t1.time_created,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) creation_date, nvl(cast(to_timestamp_tz(t1.expiration_time,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE),sysdate+10000) expire_date, unique_size_in_gbs, t1.type FROM OCI360_BV_BACKUPS t1 WHERE t1.lifecycle_state = 'AVAILABLE' ), bkps_sum_day as ( select vdate, type, SUM(CASE WHEN vdate BETWEEN creation_date AND expire_date THEN unique_size_in_gbs ELSE 0 END) TOTAL from bkps, ( SELECT trunc(sysdate) + ((ROWNUM-1)*10) vdate /* (10 in 10 days) */ FROM dual CONNECT BY LEVEL <= (366*6) /* 6 Years */ ) days where vdate <= ADD_MONTHS(sysdate,12*6) /* 6 Years */ group by vdate, type ), bkps_sum_month as ( select trunc(vdate,'mm') vdate, type, max(total) total from bkps_sum_day group by trunc(vdate,'mm'), type ), result as ( SELECT rank() over (order by vdate asc) snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI:SS') begin_time, TO_CHAR(ADD_MONTHS(vdate,1),'YYYY-MM-DD HH24:MI:SS') end_time, ROUND(SUM(total)*MF,2) line1, ROUND(SUM(CASE WHEN type = 'INCREMENTAL' THEN total ELSE 0 END)*MF,2) line2, ROUND(SUM(CASE WHEN type = 'FULL' THEN total ELSE 0 END)*MF,2) line3 FROM bkps_sum_month, "OCI360_PRICING" WHERE subject = 'STORAGE' AND inst_type = 'Object Storage' /* Backups are encrypted and stored in Oracle Cloud Infrastructure Object Storage */ GROUP BY vdate, MF ) select snap_id, begin_time, end_time, line1, line2, line3, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result order by snap_id 15:53:47 2d.68 15:53:47 2d "00089_oci360_2d_68_total_bv_backups_cost_forecast_avg.html" 15:53:49 2d "00090_oci360_2d_68_total_bv_backups_cost_forecast_avg_line_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:51 2e "File Storage" 15:53:51 NFS File system SELECT t1.* FROM OCI360_FILE_SYSTEMS t1 15:53:51 2e.69 15:53:52 2e "00091_oci360_2e_69_nfs_file_system.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:53:54 2e "File Storage" 15:53:54 Exports SELECT t1.* FROM OCI360_FS_EXPORTS t1 15:53:54 2e.70 15:53:55 2e "00092_oci360_2e_70_exports.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:00 2e "File Storage" 15:54:00 Export Sets SELECT t1.* FROM OCI360_FS_EXPORT_SETS t1 15:54:00 2e.71 15:54:02 2e "00093_oci360_2e_71_export_sets.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:07 2e "File Storage" 15:54:07 Mount Targets SELECT t1.* FROM OCI360_MOUNT_TARGETS t1 15:54:07 2e.72 15:54:07 2e "00094_oci360_2e_72_mount_targets.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:08 2e "File Storage" 15:54:08 Snapshots SELECT t1.* FROM OCI360_SNAPSHOTS t1 15:54:08 2e.73 15:54:09 2e "00095_oci360_2e_73_snapshots.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:11 2f "Object Storage" 15:54:11 Nameserver SELECT t1.* FROM OCI360_NAMESERVER t1 15:54:11 2f.74 15:54:12 2f "00096_oci360_2f_74_nameserver.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:14 2f "Object Storage" 15:54:14 Nameserver Metadata SELECT t1.* FROM OCI360_NAMESERVER_META t1 15:54:14 2f.75 15:54:14 2f "00097_oci360_2f_75_nameserver_metadata.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:16 2f "Object Storage" 15:54:16 Buckets SELECT t1.* FROM OCI360_BUCKETS t1 15:54:16 2f.76 15:54:16 2f "00098_oci360_2f_76_buckets.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:18 2f "Object Storage" 15:54:18 Multiparts SELECT t1.* FROM OCI360_MULTIPARTS t1 15:54:18 2f.77 15:54:19 2f "00099_oci360_2f_77_multiparts.html" 48 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:20 2f "Object Storage" 15:54:20 Buckets - Approx Totals select t.NAME, t."APPROXIMATE_SIZE"/POWER(1024,3) "APPROX_SIZE_GB", t."APPROXIMATE_COUNT" "APPROX_COUNT" from OCI360_BUCKETS t 15:54:20 2f.78 15:54:21 2f "00100_oci360_2f_78_buckets_approx_totals.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:23 2f "Object Storage" 15:54:23 Pre-authenticated Requests SELECT t1.* FROM OCI360_PREAUTH_REQUESTS t1 15:54:23 2f.79 15:54:23 2f "00101_oci360_2f_79_preauthenticated_requests.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:27 2f "Object Storage" 15:54:27 Work Requests SELECT t1.* FROM OCI360_OS_WORKREQS t1 15:54:27 2f.80 15:54:28 2f "00102_oci360_2f_80_work_requests.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:31 2f "Object Storage" 15:54:31 Lifecycle Policy Rules SELECT distinct ITEMS$NAME, ITEMS$ACTION, ITEMS$TIME_UNIT, ITEMS$IS_ENABLED, ITEMS$TIME_AMOUNT, TIME_CREATED FROM OCI360_OBJECT_POLICIES t1 15:54:31 2f.81 15:54:32 2f "00103_oci360_2f_81_lifecycle_policy_rules.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:33 2f "Object Storage" 15:54:33 Lifecycle Policy Rules - Prefixes SELECT ITEMS$NAME, ITEMS$OBJECT_NAME_FILTER$INCLUSION_PREFIXES FROM OCI360_OBJECT_POLICIES t1 15:54:33 2f.82 15:54:34 2f "00104_oci360_2f_82_lifecycle_policy_rules_prefixes.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:37 3a.1 "us-ashburn-1" 15:54:37 VNICs SELECT tcomp.NAME COMPARTMENT_NAME, tvcn.DISPLAY_NAME VCN_NAME, tsub.DISPLAY_NAME SUBNET_NAME, tvnic.public_ip, tvnic.is_primary, tvnic.private_ip, tvnic.mac_address, tvnic.display_name, tvnic.time_created, tvnic.hostname_label, tvnic.lifecycle_state, tvnic.availability_domain, tvnic.skip_source_dest_check, tvnic.id FROM OCI360_VNICS tvnic, (select distinct id, vcn_id, display_name from OCI360_SUBNETS) tsub, OCI360_COMPARTMENTS tcomp, OCI360_VCNS tvcn WHERE substr(tvnic.id,instr(tvnic.id,'.',1,3)+1,instr(tvnic.id,'.',1,4)-instr(tvnic.id,'.',1,3)-1) = 'iad' AND tvnic.COMPARTMENT_ID = tcomp.ID AND tvnic.SUBNET_ID = tsub.id AND tsub.VCN_ID = tvcn.ID 15:54:37 3a.1.83 15:54:38 3a.1 "00105_oci360_3a.1_83_vnics.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:40 3a.1 "us-ashburn-1" 15:54:40 VNIC Attachments SELECT t1.* FROM OCI360_VNIC_ATTACHS t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:54:40 3a.1.84 15:54:40 3a.1 "00106_oci360_3a.1_84_vnic_attachments.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:42 3a.1 "us-ashburn-1" 15:54:42 Subnets SELECT distinct tcomp.NAME COMPARTMENT_NAME, tvcn.DISPLAY_NAME VCN_NAME, tsub.ID, tsub.VCN_ID, tsub.DNS_LABEL, tsub.CIDR_BLOCK, tsub.DISPLAY_NAME, tsub.TIME_CREATED, tsub.COMPARTMENT_ID, tsub.ROUTE_TABLE_ID, tsub.DHCP_OPTIONS_ID, tsub.LIFECYCLE_STATE, tsub.VIRTUAL_ROUTER_IP, tsub.SUBNET_DOMAIN_NAME, tsub.VIRTUAL_ROUTER_MAC, tsub.AVAILABILITY_DOMAIN, tsub.PROHIBIT_PUBLIC_IP_ON_VNIC FROM OCI360_SUBNETS tsub, OCI360_COMPARTMENTS tcomp, OCI360_VCNS tvcn WHERE substr(tsub.id,instr(tsub.id,'.',1,3)+1,instr(tsub.id,'.',1,4)-instr(tsub.id,'.',1,3)-1) = 'iad' AND tsub.COMPARTMENT_ID = tcomp.ID AND tsub.VCN_ID = tvcn.ID 15:54:42 3a.1.85 15:54:43 3a.1 "00107_oci360_3a.1_85_subnets.html" 13 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:45 3a.1 "us-ashburn-1" 15:54:45 Used IPs per Subnets SELECT tsub.display_name, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, tsub.cidr_block, power(2,32-substr(tsub.cidr_block,instr(tsub.cidr_block,'/')+1))-3 TOTAL_AVAILABLE, count(tpip.id) TOTAL_USED, power(2,32-substr(tsub.cidr_block,instr(tsub.cidr_block,'/')+1))-3 - count(tpip.id) TOTAL_FREE, tsub.dns_label, tsub.subnet_domain_name, tsub.lifecycle_state, tsub.virtual_router_ip, tsub.availability_domain, tsub.prohibit_public_ip_on_vnic, tsub.id FROM (SELECT distinct id, compartment_id, vcn_id, display_name, cidr_block, dns_label, subnet_domain_name, lifecycle_state, virtual_router_ip, availability_domain, prohibit_public_ip_on_vnic FROM OCI360_SUBNETS) tsub, OCI360_PRIVATEIPS tpip, OCI360_COMPARTMENTS tcomp, OCI360_VCNS tvcn WHERE substr(tsub.id,instr(tsub.id,'.',1,3)+1,instr(tsub.id,'.',1,4)-instr(tsub.id,'.',1,3)-1) = 'iad' AND tsub.compartment_id = tcomp.ID AND tsub.id = tpip.SUBNET_ID (+) AND tsub.VCN_ID = tvcn.ID GROUP BY tsub.display_name, tsub.cidr_block, tsub.dns_label, tsub.subnet_domain_name, tsub.lifecycle_state, tsub.virtual_router_ip, tsub.availability_domain, tsub.prohibit_public_ip_on_vnic, tsub.id, tcomp.NAME, tvcn.DISPLAY_NAME 15:54:45 3a.1.86 15:54:46 3a.1 "00108_oci360_3a.1_86_used_ips_per_subnets.html" 13 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:50 3a.1 "us-ashburn-1" 15:54:50 DHCP Options SELECT t1.* FROM OCI360_DHCP_OPTIONS t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:54:50 3a.1.87 15:54:51 3a.1 "00109_oci360_3a.1_87_dhcp_options.html" 34 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:56 3a.1 "us-ashburn-1" 15:54:56 Route Tables SELECT tr.DISPLAY_NAME ROUTE_TABLE_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, tr.TIME_CREATED, tr.LIFECYCLE_STATE, tr.ROUTE_RULES$CIDR_BLOCK, tr.ROUTE_RULES$DESTINATION, tr.ROUTE_RULES$DESTINATION_TYPE, tr.ROUTE_RULES$NETWORK_ENTITY_ID, tr.ID FROM OCI360_ROUTE_TABLES tr, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE tr.COMPARTMENT_ID = tcomp.ID AND substr(tr.id,instr(tr.id,'.',1,3)+1,instr(tr.id,'.',1,4)-instr(tr.id,'.',1,3)-1) = 'iad' AND tr.VCN_ID = tvcn.ID ORDER BY COMPARTMENT_NAME, VCN_NAME, ROUTE_TABLE_NAME, TIME_CREATED 15:54:56 3a.1.88 15:54:57 3a.1 "00110_oci360_3a.1_88_route_tables.html" 21 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:58 3a.1 "us-ashburn-1" 15:54:58 Internet Gateways SELECT t1.* FROM OCI360_INTERNET_GW t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:54:58 3a.1.89 15:54:58 3a.1 "00111_oci360_3a.1_89_internet_gateways.html" 6 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:54:59 3a.1 "us-ashburn-1" 15:54:59 NAT Gateways SELECT t1.* FROM OCI360_NAT_GATEWAYS t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:54:59 3a.1.90 15:55:00 3a.1 "00112_oci360_3a.1_90_nat_gateways.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:02 3a.1 "us-ashburn-1" 15:55:02 DRGs SELECT t1.* FROM OCI360_DRGS t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:55:02 3a.1.91 15:55:03 3a.1 "00113_oci360_3a.1_91_drgs.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:04 3a.1 "us-ashburn-1" 15:55:04 DRG Attachments SELECT t1.* FROM OCI360_DRG_ATTACHS t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:55:04 3a.1.92 15:55:05 3a.1 "00114_oci360_3a.1_92_drg_attachments.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:06 3a.1 "us-ashburn-1" 15:55:06 Fast-Connect Provider Services SELECT ID, TYPE, DESCRIPTION, PROVIDER_NAME, PROVIDER_SERVICE_NAME, PUBLIC_PEERING_BGP_MANAGEMENT, PRIVATE_PEERING_BGP_MANAGEMENT, listagg(SUPPORTED_VIRTUAL_CIRCUIT_TYPES,', ') within group(order by SUPPORTED_VIRTUAL_CIRCUIT_TYPES) SUPPORTED_VIRTUAL_CIRCUIT_TYPES FROM OCI360_FC_PROV_SRVCS t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' GROUP BY ID, TYPE, DESCRIPTION, PROVIDER_NAME, PROVIDER_SERVICE_NAME, PUBLIC_PEERING_BGP_MANAGEMENT, PRIVATE_PEERING_BGP_MANAGEMENT 15:55:06 3a.1.93 15:55:07 3a.1 "00115_oci360_3a.1_93_fastconnect_provider_services.html" 23 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:09 3a.1 "us-ashburn-1" 15:55:09 Local Peering Gateways SELECT t1.* FROM OCI360_LOCAL_PEERING t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:55:09 3a.1.94 15:55:09 3a.1 "00116_oci360_3a.1_94_local_peering_gateways.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:12 3a.1 "us-ashburn-1" 15:55:12 Remote Peering Connections SELECT t1.* FROM OCI360_REMOTE_PEERING t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:55:12 3a.1.95 15:55:12 3a.1 "00117_oci360_3a.1_95_remote_peering_connections.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:15 3a.1 "us-ashburn-1" 15:55:15 Network Services SELECT t1.* FROM OCI360_NETSERVICES t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:55:15 3a.1.96 15:55:15 3a.1 "00118_oci360_3a.1_96_network_services.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:20 3a.1 "us-ashburn-1" 15:55:20 Network Service Gateways SELECT t1.* FROM OCI360_NETSERVICE_GW t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:55:20 3a.1.97 15:55:21 3a.1 "00119_oci360_3a.1_97_network_service_gateways.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:23 3a.1 "us-ashburn-1" 15:55:23 VCNs SELECT t1.* FROM OCI360_VCNS t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:55:23 3a.1.98 15:55:23 3a.1 "00120_oci360_3a.1_98_vcns.html" 7 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:24 3a.1 "us-ashburn-1" 15:55:24 Private IPs SELECT tcomp.NAME COMPARTMENT_NAME, tvcn.DISPLAY_NAME VCN_NAME, tsub.DISPLAY_NAME SUBNET_NAME, tpip.IP_ADDRESS, tpip.IS_PRIMARY, tpip.DISPLAY_NAME, tpip.TIME_CREATED, tpip.HOSTNAME_LABEL, tpip.AVAILABILITY_DOMAIN, tpip.VNIC_ID, tpip.ID FROM OCI360_PRIVATEIPS tpip, (select distinct id, vcn_id, display_name from OCI360_SUBNETS) tsub, OCI360_COMPARTMENTS tcomp, OCI360_VCNS tvcn WHERE substr(tpip.id,instr(tpip.id,'.',1,3)+1,instr(tpip.id,'.',1,4)-instr(tpip.id,'.',1,3)-1) = 'iad' AND tpip.COMPARTMENT_ID = tcomp.ID AND tpip.SUBNET_ID = tsub.id AND tsub.VCN_ID = tvcn.ID 15:55:24 3a.1.99 15:55:25 3a.1 "00121_oci360_3a.1_99_private_ips.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:27 3a.1 "us-ashburn-1" 15:55:27 Public IPs SELECT t1.* FROM OCI360_PUBLICIPS t1 WHERE substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad' 15:55:27 3a.1.100 15:55:27 3a.1 "00122_oci360_3a.1_100_public_ips.html" 5 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:29 3a.1 "us-ashburn-1" 15:55:29 VCN Map WITH t_regs AS (SELECT /*+ materialize */ region_name, lower(region_key) region_key from OCI360_REGIONS_SUBS where lower(region_key)='iad'), t_vcns AS (SELECT /*+ materialize */ id, display_name || ' - ' || CIDR_BLOCK display_name, substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) region_key FROM OCI360_VCNS where substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad'), t_subs AS (SELECT /*+ materialize */ distinct id, display_name || ' - ' || CIDR_BLOCK display_name, vcn_id FROM OCI360_SUBNETS where substr(id,instr(id,'.',1,3)+1,instr(id,'.',1,4)-instr(id,'.',1,3)-1) = 'iad'), t_insts AS (SELECT t1.id, t3.id subnet_id, t1.display_name, substr(t1.shape,instr(t1.shape,'.',-1)+1) value FROM OCI360_INSTANCES t1, OCI360_VNIC_ATTACHS t2, t_subs t3 WHERE t1.id = t2.instance_id AND t2.subnet_id = t3.id) SELECT region_key "ID", null "PARENT_ID", region_name "DISPLAY_NAME", 0 "VALUE" FROM t_regs UNION ALL SELECT id, region_key, display_name, 1 FROM t_vcns UNION ALL SELECT id, vcn_id, display_name, 2 FROM t_subs UNION ALL SELECT id, subnet_id, display_name, 3*to_number(value) FROM t_insts 15:55:29 3a.1.101 15:55:30 3a.1 "00123_oci360_3a.1_101_vcn_map.html" 15:55:31 3a.1 "00124_oci360_3a.1_101_vcn_map_circle_packing.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:33 3b.1 "us-ashburn-1" 15:55:33 Security Lists per Subnet SELECT distinct tsub.DISPLAY_NAME SUBNET_NAME, ts.DISPLAY_NAME SECLIST_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.ID SECLIST_ID, tsub.ID SUBNET_ID FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp, OCI360_SUBNETS tsub WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND tsub.security_list_ids LIKE '%' || ts.ID || '%' AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' ORDER BY COMPARTMENT_NAME, VCN_NAME, SUBNET_NAME, SECLIST_NAME 15:55:33 3b.1.102 15:55:34 3b.1 "00125_oci360_3b.1_102_security_lists_per_subnet.html" 13 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:37 3b.1 "us-ashburn-1" 15:55:37 Security Lists - Ingress SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts."INGRESS_SECURITY_RULES$SOURCE" SOURCE, ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" SOURCE_TYPE, ts."INGRESS_SECURITY_RULES$PROTOCOL" PROTOCOL, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MIN" SOURCE_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MAX" SOURCE_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MIN" DESTINATION_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MAX" DESTINATION_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" ICMP_CODE, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" ICMP_TYPE, ts."INGRESS_SECURITY_RULES$IS_STATELESS" IS_STATELESS, ts.ID FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" is not null AND ts."INGRESS_SECURITY_RULES$PROTOCOL"!='17' AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' UNION ALL SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts."INGRESS_SECURITY_RULES$SOURCE" SOURCE, ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" SOURCE_TYPE, ts."INGRESS_SECURITY_RULES$PROTOCOL" PROTOCOL, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MIN" SOURCE_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MAX" SOURCE_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MIN" DESTINATION_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MAX" DESTINATION_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" ICMP_CODE, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" ICMP_TYPE, ts."INGRESS_SECURITY_RULES$IS_STATELESS" IS_STATELESS, ts.ID FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" is not null AND ts."INGRESS_SECURITY_RULES$PROTOCOL"='17' AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' ORDER BY COMPARTMENT_NAME,VCN_NAME,DISPLAY_NAME,LIFECYCLE_STATE,PROTOCOL 15:55:37 3b.1.103 15:55:37 3b.1 "00126_oci360_3b.1_103_security_lists_ingress.html" 33 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:44 3b.1 "us-ashburn-1" 15:55:44 Security Lists - Egress SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts."EGRESS_SECURITY_RULES$DESTINATION" DESTINATION, ts."EGRESS_SECURITY_RULES$DESTINATION_TYPE" DESTINATION_TYPE, ts."EGRESS_SECURITY_RULES$PROTOCOL" PROTOCOL, ts."EGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MIN" SOURCE_PORT_RANGE_MIN, ts."EGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MAX" SOURCE_PORT_RANGE_MAX, ts."EGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MIN" DESTINATION_PORT_RANGE_MIN, ts."EGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MAX" DESTINATION_PORT_RANGE_MAX, ts."EGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" ICMP_CODE, ts."EGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" ICMP_TYPE, ts."EGRESS_SECURITY_RULES$IS_STATELESS" IS_STATELESS, ts.ID FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."EGRESS_SECURITY_RULES$DESTINATION_TYPE" is not null AND ts."EGRESS_SECURITY_RULES$PROTOCOL"!='17' AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' UNION ALL SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts."EGRESS_SECURITY_RULES$DESTINATION" DESTINATION, ts."EGRESS_SECURITY_RULES$DESTINATION_TYPE" DESTINATION_TYPE, ts."EGRESS_SECURITY_RULES$PROTOCOL" PROTOCOL, ts."EGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MIN" SOURCE_PORT_RANGE_MIN, ts."EGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MAX" SOURCE_PORT_RANGE_MAX, ts."EGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MIN" DESTINATION_PORT_RANGE_MIN, ts."EGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MAX" DESTINATION_PORT_RANGE_MAX, ts."EGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" ICMP_CODE, ts."EGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" ICMP_TYPE, ts."EGRESS_SECURITY_RULES$IS_STATELESS" IS_STATELESS, ts.ID FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."EGRESS_SECURITY_RULES$DESTINATION_TYPE" is not null AND ts."EGRESS_SECURITY_RULES$PROTOCOL"='17' AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' ORDER BY COMPARTMENT_NAME,VCN_NAME,DISPLAY_NAME,LIFECYCLE_STATE,PROTOCOL 15:55:44 3b.1.104 15:55:45 3b.1 "00127_oci360_3b.1_104_security_lists_egress.html" 15 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:50 3b.1 "us-ashburn-1" 15:55:50 Security Lists - Empty SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts.ID FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" is null AND ts."EGRESS_SECURITY_RULES$DESTINATION_TYPE" is null AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' ORDER BY ts.DISPLAY_NAME,ts.LIFECYCLE_STATE 15:55:50 3b.1.105 15:55:50 3b.1 "00128_oci360_3b.1_105_security_lists_empty.html" 6 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:53 3b.1 "us-ashburn-1" 15:55:53 Subnet Internal Reachability per VNIC WITH /* Functions by Rodrigo Jorge - www.dbarj.com.br */ /* Convert IP to Decimal */ FUNCTION ip_to_dec (v_in VARCHAR2) RETURN NUMBER DETERMINISTIC IS v_oct1 NUMBER(3); v_oct2 NUMBER(3); v_oct3 NUMBER(3); v_oct4 NUMBER(3); BEGIN v_oct1 := SUBSTR(v_in,1,instr(v_in,'.',1,1)-1); v_oct2 := SUBSTR(v_in,instr(v_in,'.',1,1)+1,instr(v_in,'.',1,2)-instr(v_in,'.',1,1)-1); v_oct3 := SUBSTR(v_in,instr(v_in,'.',1,2)+1,instr(v_in,'.',1,3)-instr(v_in,'.',1,2)-1); v_oct4 := SUBSTR(v_in,instr(v_in,'.',1,3)+1); RETURN v_oct1*power(256,3)+v_oct2*power(256,2)+v_oct3*power(256,1)+v_oct4*power(256,0); END; /* Convert Decimal to IP */ FUNCTION dec_to_ip (v_in NUMBER) RETURN VARCHAR2 DETERMINISTIC IS v_oct1 NUMBER(3); v_oct2 NUMBER; v_oct3 NUMBER; v_oct4 NUMBER(3); BEGIN v_oct4 := trunc(mod(v_in,power(256,1))/power(256,0)); v_oct3 := trunc(mod(v_in,power(256,2))/power(256,1)); v_oct2 := trunc(mod(v_in,power(256,3))/power(256,2)); v_oct1 := trunc(mod(v_in,power(256,4))/power(256,3)); RETURN v_oct1 || '.' || v_oct2 || '.' || v_oct3 || '.' || v_oct4; END; /* Bit Or Function */ FUNCTION bitor(x NUMBER, y NUMBER) RETURN NUMBER DETERMINISTIC IS BEGIN RETURN x + y - bitand(x, y); END; /* Get Min IP decimal for CIDR */ FUNCTION cidr_dec_min (v_in VARCHAR2) RETURN NUMBER DETERMINISTIC IS v_ip_num NUMBER; v_mask_num NUMBER; v_mask NUMBER(2); BEGIN v_ip_num := ip_to_dec(SUBSTR(v_in,1,instr(v_in,'/',1,1)-1)); v_mask := SUBSTR(v_in,instr(v_in,'/',1,1)+1); v_mask_num := POWER(2,32) - POWER(2,32 - v_mask); RETURN BITAND(v_ip_num,v_mask_num); END; /* Get Max IP decimal for CIDR */ FUNCTION cidr_dec_max (v_in VARCHAR2) RETURN NUMBER DETERMINISTIC IS v_ip_num NUMBER; v_mask_num NUMBER; v_mask NUMBER(2); BEGIN v_ip_num := ip_to_dec(SUBSTR(v_in,1,instr(v_in,'/',1,1)-1)); v_mask := SUBSTR(v_in,instr(v_in,'/',1,1)+1); v_mask_num := POWER(2,32 - v_mask)-1; RETURN BITOR(v_ip_num,v_mask_num); END; SELECT ts.COMPARTMENT_NAME, ts.VCN_NAME, tsubsrc.DISPLAY_NAME VNIC_SUBNET_NAME, tvnic.display_name VNIC_NAME, tvnic.private_ip, tvnic.public_ip, tvnic.is_primary, tvnic.lifecycle_state vnic_lifecycle_state, tvnic.availability_domain, tvnic.id vnic_id, tsubtrg.DISPLAY_NAME TARGET_SUBNET_NAME, ts.DISPLAY_NAME SECLIST_NAME, ts.LIFECYCLE_STATE, ts.SOURCE, ts.PROTOCOL, ts.SOURCE_PORT_RANGE_MIN, ts.SOURCE_PORT_RANGE_MAX, ts.DESTINATION_PORT_RANGE_MIN, ts.DESTINATION_PORT_RANGE_MAX, ts.ICMP_CODE, ts.ICMP_TYPE, ts.IS_STATELESS, ts.ID FROM OCI360_VNICS tvnic, OCI360_PRIVATEIPS tpips, (SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts."INGRESS_SECURITY_RULES$SOURCE" SOURCE, ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" SOURCE_TYPE, ts."INGRESS_SECURITY_RULES$PROTOCOL" PROTOCOL, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MIN" SOURCE_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MAX" SOURCE_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MIN" DESTINATION_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MAX" DESTINATION_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" ICMP_CODE, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" ICMP_TYPE, ts."INGRESS_SECURITY_RULES$IS_STATELESS" IS_STATELESS, ts.ID FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" is not null AND ts."INGRESS_SECURITY_RULES$PROTOCOL"!='17' AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' UNION ALL SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts."INGRESS_SECURITY_RULES$SOURCE" SOURCE, ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" SOURCE_TYPE, ts."INGRESS_SECURITY_RULES$PROTOCOL" PROTOCOL, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MIN" SOURCE_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MAX" SOURCE_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MIN" DESTINATION_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MAX" DESTINATION_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" ICMP_CODE, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" ICMP_TYPE, ts."INGRESS_SECURITY_RULES$IS_STATELESS" IS_STATELESS, ts.ID FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" is not null AND ts."INGRESS_SECURITY_RULES$PROTOCOL"='17' AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' ORDER BY COMPARTMENT_NAME,VCN_NAME,DISPLAY_NAME,LIFECYCLE_STATE,PROTOCOL) ts, (SELECT distinct id, vcn_id, display_name from OCI360_SUBNETS) tsubsrc, (SELECT distinct security_list_ids, vcn_id, display_name from OCI360_SUBNETS) tsubtrg WHERE tvnic.SUBNET_ID = tsubsrc.id AND tvnic.id = tpips.vnic_id AND tsubsrc.VCN_ID = tsubtrg.VCN_ID AND tsubtrg.security_list_ids LIKE '%' || ts.ID || '%' AND substr(tvnic.id,instr(tvnic.id,'.',1,3)+1,instr(tvnic.id,'.',1,4)-instr(tvnic.id,'.',1,3)-1) = 'iad' AND ts.SOURCE_TYPE = 'CIDR_BLOCK' AND ip_to_dec(tpips.ip_address) between cidr_dec_min(ts.SOURCE) and cidr_dec_max(ts.SOURCE) ORDER BY COMPARTMENT_NAME, VCN_NAME, VNIC_SUBNET_NAME, VNIC_NAME, TARGET_SUBNET_NAME 15:55:53 3b.1.106 15:55:53 3b.1 "00129_oci360_3b.1_106_subnet_internal_reachability_per_vnic.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:55 3b.1 "us-ashburn-1" 15:55:55 Obsolete Security Ingress Rules WITH /* Functions by Rodrigo Jorge - www.dbarj.com.br */ /* Convert IP to Decimal */ FUNCTION ip_to_dec (v_in VARCHAR2) RETURN NUMBER DETERMINISTIC IS v_oct1 NUMBER(3); v_oct2 NUMBER(3); v_oct3 NUMBER(3); v_oct4 NUMBER(3); BEGIN v_oct1 := SUBSTR(v_in,1,instr(v_in,'.',1,1)-1); v_oct2 := SUBSTR(v_in,instr(v_in,'.',1,1)+1,instr(v_in,'.',1,2)-instr(v_in,'.',1,1)-1); v_oct3 := SUBSTR(v_in,instr(v_in,'.',1,2)+1,instr(v_in,'.',1,3)-instr(v_in,'.',1,2)-1); v_oct4 := SUBSTR(v_in,instr(v_in,'.',1,3)+1); RETURN v_oct1*power(256,3)+v_oct2*power(256,2)+v_oct3*power(256,1)+v_oct4*power(256,0); END; /* Convert Decimal to IP */ FUNCTION dec_to_ip (v_in NUMBER) RETURN VARCHAR2 DETERMINISTIC IS v_oct1 NUMBER(3); v_oct2 NUMBER; v_oct3 NUMBER; v_oct4 NUMBER(3); BEGIN v_oct4 := trunc(mod(v_in,power(256,1))/power(256,0)); v_oct3 := trunc(mod(v_in,power(256,2))/power(256,1)); v_oct2 := trunc(mod(v_in,power(256,3))/power(256,2)); v_oct1 := trunc(mod(v_in,power(256,4))/power(256,3)); RETURN v_oct1 || '.' || v_oct2 || '.' || v_oct3 || '.' || v_oct4; END; /* Bit Or Function */ FUNCTION bitor(x NUMBER, y NUMBER) RETURN NUMBER DETERMINISTIC IS BEGIN RETURN x + y - bitand(x, y); END; /* Get Min IP decimal for CIDR */ FUNCTION cidr_dec_min (v_in VARCHAR2) RETURN NUMBER DETERMINISTIC IS v_ip_num NUMBER; v_mask_num NUMBER; v_mask NUMBER(2); BEGIN v_ip_num := ip_to_dec(SUBSTR(v_in,1,instr(v_in,'/',1,1)-1)); v_mask := SUBSTR(v_in,instr(v_in,'/',1,1)+1); v_mask_num := POWER(2,32) - POWER(2,32 - v_mask); RETURN BITAND(v_ip_num,v_mask_num); END; /* Get Max IP decimal for CIDR */ FUNCTION cidr_dec_max (v_in VARCHAR2) RETURN NUMBER DETERMINISTIC IS v_ip_num NUMBER; v_mask_num NUMBER; v_mask NUMBER(2); BEGIN v_ip_num := ip_to_dec(SUBSTR(v_in,1,instr(v_in,'/',1,1)-1)); v_mask := SUBSTR(v_in,instr(v_in,'/',1,1)+1); v_mask_num := POWER(2,32 - v_mask)-1; RETURN BITOR(v_ip_num,v_mask_num); END; SELECT ts.DISPLAY_NAME, ts.VCN_NAME, ts.COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts.SOURCE, ts.SOURCE_TYPE, ts.PROTOCOL, ts.SOURCE_PORT_RANGE_MIN, ts.SOURCE_PORT_RANGE_MAX, ts.DESTINATION_PORT_RANGE_MIN, ts.DESTINATION_PORT_RANGE_MAX, ts.ICMP_CODE, ts.ICMP_TYPE, ts.IS_STATELESS, ts.ID, ts.SOURCE_IP, ts.CIDR_BLOCK, ip_to_dec(ts.SOURCE_IP), cidr_dec_min(ts.CIDR_BLOCK), cidr_dec_max(ts.CIDR_BLOCK) FROM (SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts."INGRESS_SECURITY_RULES$SOURCE" SOURCE, ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" SOURCE_TYPE, ts."INGRESS_SECURITY_RULES$PROTOCOL" PROTOCOL, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MIN" SOURCE_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MAX" SOURCE_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MIN" DESTINATION_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MAX" DESTINATION_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" ICMP_CODE, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" ICMP_TYPE, ts."INGRESS_SECURITY_RULES$IS_STATELESS" IS_STATELESS, ts.ID, tvcn.CIDR_BLOCK, tvcn.ID VCN_ID, SUBSTR(ts."INGRESS_SECURITY_RULES$SOURCE",1,instr(ts."INGRESS_SECURITY_RULES$SOURCE",'/',1,1)-1) SOURCE_IP FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" = 'CIDR_BLOCK' AND ts."INGRESS_SECURITY_RULES$PROTOCOL"!='17' AND SUBSTR(ts."INGRESS_SECURITY_RULES$SOURCE",instr(ts."INGRESS_SECURITY_RULES$SOURCE",'/',1,1)+1)=32 AND cidr_dec_min(ts."INGRESS_SECURITY_RULES$SOURCE") between cidr_dec_min(tvcn.CIDR_BLOCK) and cidr_dec_max(tvcn.CIDR_BLOCK) AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' UNION ALL SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts."INGRESS_SECURITY_RULES$SOURCE" SOURCE, ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" SOURCE_TYPE, ts."INGRESS_SECURITY_RULES$PROTOCOL" PROTOCOL, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MIN" SOURCE_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MAX" SOURCE_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MIN" DESTINATION_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MAX" DESTINATION_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" ICMP_CODE, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" ICMP_TYPE, ts."INGRESS_SECURITY_RULES$IS_STATELESS" IS_STATELESS, ts.ID, tvcn.CIDR_BLOCK, tvcn.ID VCN_ID, SUBSTR(ts."INGRESS_SECURITY_RULES$SOURCE",1,instr(ts."INGRESS_SECURITY_RULES$SOURCE",'/',1,1)-1) SOURCE_IP FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" = 'CIDR_BLOCK' AND ts."INGRESS_SECURITY_RULES$PROTOCOL"='17' AND SUBSTR(ts."INGRESS_SECURITY_RULES$SOURCE",instr(ts."INGRESS_SECURITY_RULES$SOURCE",'/',1,1)+1)=32 AND cidr_dec_min(ts."INGRESS_SECURITY_RULES$SOURCE") between cidr_dec_min(tvcn.CIDR_BLOCK) and cidr_dec_max(tvcn.CIDR_BLOCK) AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad') ts WHERE SOURCE_IP NOT IN ( SELECT tpips.ip_address from OCI360_SUBNETS tsub, OCI360_PRIVATEIPS tpips where tpips.SUBNET_ID = tsub.id AND tsub.VCN_ID = ts.VCN_ID ) ORDER BY COMPARTMENT_NAME,VCN_NAME,DISPLAY_NAME,LIFECYCLE_STATE,PROTOCOL 15:55:55 3b.1.107 15:55:56 3b.1 "00130_oci360_3b.1_107_obsolete_security_ingress_rules.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:55:58 3b.1 "us-ashburn-1" 15:55:58 Redundant Security Ingress Rules WITH /* Functions by Rodrigo Jorge - www.dbarj.com.br */ /* Convert IP to Decimal */ FUNCTION ip_to_dec (v_in VARCHAR2) RETURN NUMBER DETERMINISTIC IS v_oct1 NUMBER(3); v_oct2 NUMBER(3); v_oct3 NUMBER(3); v_oct4 NUMBER(3); BEGIN v_oct1 := SUBSTR(v_in,1,instr(v_in,'.',1,1)-1); v_oct2 := SUBSTR(v_in,instr(v_in,'.',1,1)+1,instr(v_in,'.',1,2)-instr(v_in,'.',1,1)-1); v_oct3 := SUBSTR(v_in,instr(v_in,'.',1,2)+1,instr(v_in,'.',1,3)-instr(v_in,'.',1,2)-1); v_oct4 := SUBSTR(v_in,instr(v_in,'.',1,3)+1); RETURN v_oct1*power(256,3)+v_oct2*power(256,2)+v_oct3*power(256,1)+v_oct4*power(256,0); END; /* Convert Decimal to IP */ FUNCTION dec_to_ip (v_in NUMBER) RETURN VARCHAR2 DETERMINISTIC IS v_oct1 NUMBER(3); v_oct2 NUMBER; v_oct3 NUMBER; v_oct4 NUMBER(3); BEGIN v_oct4 := trunc(mod(v_in,power(256,1))/power(256,0)); v_oct3 := trunc(mod(v_in,power(256,2))/power(256,1)); v_oct2 := trunc(mod(v_in,power(256,3))/power(256,2)); v_oct1 := trunc(mod(v_in,power(256,4))/power(256,3)); RETURN v_oct1 || '.' || v_oct2 || '.' || v_oct3 || '.' || v_oct4; END; /* Bit Or Function */ FUNCTION bitor(x NUMBER, y NUMBER) RETURN NUMBER DETERMINISTIC IS BEGIN RETURN x + y - bitand(x, y); END; /* Get Min IP decimal for CIDR */ FUNCTION cidr_dec_min (v_in VARCHAR2) RETURN NUMBER DETERMINISTIC IS v_ip_num NUMBER; v_mask_num NUMBER; v_mask NUMBER(2); BEGIN v_ip_num := ip_to_dec(SUBSTR(v_in,1,instr(v_in,'/',1,1)-1)); v_mask := SUBSTR(v_in,instr(v_in,'/',1,1)+1); v_mask_num := POWER(2,32) - POWER(2,32 - v_mask); RETURN BITAND(v_ip_num,v_mask_num); END; /* Get Max IP decimal for CIDR */ FUNCTION cidr_dec_max (v_in VARCHAR2) RETURN NUMBER DETERMINISTIC IS v_ip_num NUMBER; v_mask_num NUMBER; v_mask NUMBER(2); BEGIN v_ip_num := ip_to_dec(SUBSTR(v_in,1,instr(v_in,'/',1,1)-1)); v_mask := SUBSTR(v_in,instr(v_in,'/',1,1)+1); v_mask_num := POWER(2,32 - v_mask)-1; RETURN BITOR(v_ip_num,v_mask_num); END; SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts."INGRESS_SECURITY_RULES$SOURCE" SOURCE, ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" SOURCE_TYPE, ts."INGRESS_SECURITY_RULES$PROTOCOL" PROTOCOL, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MIN" SOURCE_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MAX" SOURCE_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MIN" DESTINATION_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MAX" DESTINATION_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" ICMP_CODE, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" ICMP_TYPE, ts."INGRESS_SECURITY_RULES$IS_STATELESS" IS_STATELESS, ts.ID FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" is not null AND ts."INGRESS_SECURITY_RULES$PROTOCOL"!='17' AND EXISTS ( SELECT 1 FROM OCI360_SECLISTS TS2 WHERE TS.ID = TS2.ID AND ts.rowid <> ts2.rowid AND (cidr_dec_min(ts."INGRESS_SECURITY_RULES$SOURCE") >= cidr_dec_min(ts2."INGRESS_SECURITY_RULES$SOURCE") and cidr_dec_max(ts."INGRESS_SECURITY_RULES$SOURCE") <= cidr_dec_max(ts2."INGRESS_SECURITY_RULES$SOURCE")) AND (ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" = ts2."INGRESS_SECURITY_RULES$SOURCE_TYPE") AND (ts."INGRESS_SECURITY_RULES$PROTOCOL" = ts2."INGRESS_SECURITY_RULES$PROTOCOL" or ts2."INGRESS_SECURITY_RULES$PROTOCOL"='all') AND (ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MIN" = ts2."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MIN" or ts2."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MIN" is null) AND (ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MAX" = ts2."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MAX" or ts2."INGRESS_SECURITY_RULES$TCP_OPTIONS$SOURCE_PORT_RANGE$MAX" is null) AND (ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MIN" = ts2."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MIN" or ts2."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MIN" is null) AND (ts."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MAX" = ts2."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MAX" or ts2."INGRESS_SECURITY_RULES$TCP_OPTIONS$DESTINATION_PORT_RANGE$MAX" is null) AND (ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" = ts2."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" or ts2."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" is null) AND (ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" = ts2."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" or ts2."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" is null) AND (ts."INGRESS_SECURITY_RULES$IS_STATELESS" = ts2."INGRESS_SECURITY_RULES$IS_STATELESS") ) AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' UNION SELECT ts.DISPLAY_NAME, tvcn.DISPLAY_NAME VCN_NAME, tcomp.NAME COMPARTMENT_NAME, ts.TIME_CREATED, ts.LIFECYCLE_STATE, ts."INGRESS_SECURITY_RULES$SOURCE" SOURCE, ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" SOURCE_TYPE, ts."INGRESS_SECURITY_RULES$PROTOCOL" PROTOCOL, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MIN" SOURCE_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MAX" SOURCE_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MIN" DESTINATION_PORT_RANGE_MIN, ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MAX" DESTINATION_PORT_RANGE_MAX, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" ICMP_CODE, ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" ICMP_TYPE, ts."INGRESS_SECURITY_RULES$IS_STATELESS" IS_STATELESS, ts.ID FROM OCI360_SECLISTS ts, OCI360_VCNS tvcn, OCI360_COMPARTMENTS tcomp WHERE ts.COMPARTMENT_ID = tcomp.ID AND ts.VCN_ID = tvcn.ID AND ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" is not null AND ts."INGRESS_SECURITY_RULES$PROTOCOL"='17' AND EXISTS ( SELECT 1 FROM OCI360_SECLISTS TS2 WHERE TS.ID = TS2.ID AND ts.rowid <> ts2.rowid AND (cidr_dec_min(ts."INGRESS_SECURITY_RULES$SOURCE") >= cidr_dec_min(ts2."INGRESS_SECURITY_RULES$SOURCE") and cidr_dec_max(ts."INGRESS_SECURITY_RULES$SOURCE") <= cidr_dec_max(ts2."INGRESS_SECURITY_RULES$SOURCE")) AND (ts."INGRESS_SECURITY_RULES$SOURCE_TYPE" = ts2."INGRESS_SECURITY_RULES$SOURCE_TYPE") AND (ts."INGRESS_SECURITY_RULES$PROTOCOL" = ts2."INGRESS_SECURITY_RULES$PROTOCOL" or ts2."INGRESS_SECURITY_RULES$PROTOCOL"='all') AND (ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MIN" = ts2."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MIN" or ts2."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MIN" is null) AND (ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MAX" = ts2."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MAX" or ts2."INGRESS_SECURITY_RULES$UDP_OPTIONS$SOURCE_PORT_RANGE$MAX" is null) AND (ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MIN" = ts2."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MIN" or ts2."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MIN" is null) AND (ts."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MAX" = ts2."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MAX" or ts2."INGRESS_SECURITY_RULES$UDP_OPTIONS$DESTINATION_PORT_RANGE$MAX" is null) AND (ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" = ts2."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" or ts2."INGRESS_SECURITY_RULES$ICMP_OPTIONS$CODE" is null) AND (ts."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" = ts2."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" or ts2."INGRESS_SECURITY_RULES$ICMP_OPTIONS$TYPE" is null) AND (ts."INGRESS_SECURITY_RULES$IS_STATELESS" = ts2."INGRESS_SECURITY_RULES$IS_STATELESS") ) AND substr(ts.id,instr(ts.id,'.',1,3)+1,instr(ts.id,'.',1,4)-instr(ts.id,'.',1,3)-1) = 'iad' ORDER BY COMPARTMENT_NAME,VCN_NAME,DISPLAY_NAME,LIFECYCLE_STATE,PROTOCOL 15:55:58 3b.1.108 15:55:58 3b.1 "00131_oci360_3b.1_108_redundant_security_ingress_rules.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:01 3c "More Network Info" 15:56:01 CPEs SELECT t1.* FROM OCI360_CPE t1 15:56:01 3c.109 15:56:02 3c "00132_oci360_3c_109_cpes.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:04 3c "More Network Info" 15:56:04 IPSec Connections SELECT distinct ID, CPE_ID, DRG_ID, DISPLAY_NAME, TIME_CREATED, COMPARTMENT_ID, LIFECYCLE_STATE FROM OCI360_IPSEC_CONNS t1 15:56:04 3c.110 15:56:05 3c "00133_oci360_3c_110_ipsec_connections.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:08 3c "More Network Info" 15:56:08 IPSec Connections - Static Routes SELECT ID, DISPLAY_NAME, STATIC_ROUTES FROM OCI360_IPSEC_CONNS t1 15:56:08 3c.111 15:56:09 3c "00134_oci360_3c_111_ipsec_connections_static_routes.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:12 3c "More Network Info" 15:56:12 Virtual Circuits SELECT t1.* FROM OCI360_VIRT_CIRC t1 15:56:12 3c.112 15:56:12 3c "00135_oci360_3c_112_virtual_circuits.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:13 3c "More Network Info" 15:56:13 Virtual Circuits Public Prefix SELECT t1.* FROM OCI360_VIRT_CIRC_PUBPREF t1 15:56:13 3c.113 15:56:13 3c "00136_oci360_3c_113_virtual_circuits_public_prefix.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:15 3d "Cross Connections" 15:56:15 Cross-Connections SELECT t1.* FROM OCI360_CROSSCONN t1 15:56:15 3d.114 15:56:15 3d "00137_oci360_3d_114_crossconnections.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:16 3d "Cross Connections" 15:56:16 Cross-Connection Groups SELECT t1.* FROM OCI360_CROSSCONN_GRP t1 15:56:16 3d.115 15:56:16 3d "00138_oci360_3d_115_crossconnection_groups.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:17 3d "Cross Connections" 15:56:17 Cross-Connection Locations SELECT t1.* FROM OCI360_CROSSCONN_LOC t1 15:56:17 3d.116 15:56:18 3d "00139_oci360_3d_116_crossconnection_locations.html" 63 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:19 3d "Cross Connections" 15:56:19 Cross-Connection Ports SELECT t1.* FROM OCI360_CROSSCONN_PORT t1 15:56:19 3d.117 15:56:19 3d "00140_oci360_3d_117_crossconnection_ports.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:21 3d "Cross Connections" 15:56:21 Cross-Connection Status SELECT t1.* FROM OCI360_CROSSCONN_STATUS t1 15:56:21 3d.118 15:56:21 3d "00141_oci360_3d_118_crossconnection_status.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:23 4a "Load Balance" 15:56:23 Load Balancers SELECT distinct ID, IS_PRIVATE, SHAPE_NAME, DISPLAY_NAME, TIME_CREATED, COMPARTMENT_ID, LIFECYCLE_STATE, IP_ADDRESSES$IS_PUBLIC, IP_ADDRESSES$IP_ADDRESS FROM OCI360_LB_LOADBALANCERS t1 15:56:23 4a.119 15:56:23 4a "00142_oci360_4a_119_load_balancers.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:25 4a "Load Balance" 15:56:25 Load Balancer Subnets SELECT ID, DISPLAY_NAME, SUBNET_IDS FROM OCI360_LB_LOADBALANCERS t1 WHERE SUBNET_IDS is not null 15:56:25 4a.120 15:56:25 4a "00143_oci360_4a_120_load_balancer_subnets.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:27 4a "Load Balance" 15:56:27 Load Balancers Health SELECT t1.* FROM OCI360_LB_LOADBALANCERS_HEALTH t1 15:56:27 4a.121 15:56:28 4a "00144_oci360_4a_121_load_balancers_health.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:31 4a "Load Balance" 15:56:31 Backend-Sets SELECT t1.* FROM OCI360_LB_BACKENDSETS t1 15:56:31 4a.122 15:56:32 4a "00145_oci360_4a_122_backendsets.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:34 4a "Load Balance" 15:56:34 Backend-Sets Health SELECT t1.* FROM OCI360_LB_BACKENDSETS_HEALTH t1 15:56:34 4a.123 15:56:35 4a "00146_oci360_4a_123_backendsets_health.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:37 4a "Load Balance" 15:56:37 Backends SELECT t1.* FROM OCI360_LB_BACKENDS t1 15:56:37 4a.124 15:56:38 4a "00147_oci360_4a_124_backends.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:42 4a "Load Balance" 15:56:42 Backends Health SELECT t1.* FROM OCI360_LB_BACKENDS_HEALTH t1 15:56:42 4a.125 15:56:44 4a "00148_oci360_4a_125_backends_health.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:46 4a "Load Balance" 15:56:46 Certificates SELECT t1.* FROM OCI360_LB_CERTIFICATES t1 15:56:46 4a.126 15:56:47 4a "00149_oci360_4a_126_certificates.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:51 4a "Load Balance" 15:56:51 Health Checks SELECT t1.* FROM OCI360_LB_HEALTHCHECKS t1 15:56:51 4a.127 15:56:51 4a "00150_oci360_4a_127_health_checks.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:54 4a "Load Balance" 15:56:54 Hostnames SELECT t1.* FROM OCI360_LB_HOSTNAMES t1 15:56:54 4a.128 15:56:55 4a "00151_oci360_4a_128_hostnames.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:56:59 4a "Load Balance" 15:56:59 Path Routes SELECT t1.* FROM OCI360_LB_PATHROUTES t1 15:56:59 4a.129 15:57:00 4a "00152_oci360_4a_129_path_routes.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:01 4a "Load Balance" 15:57:01 Policies SELECT t1.* FROM OCI360_LB_POLICIES t1 15:57:01 4a.130 15:57:01 4a "00153_oci360_4a_130_policies.html" 63 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:02 4a "Load Balance" 15:57:02 Protocols SELECT t1.* FROM OCI360_LB_PROTOCOLS t1 15:57:02 4a.131 15:57:02 4a "00154_oci360_4a_131_protocols.html" 63 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:04 4a "Load Balance" 15:57:04 Shapes SELECT t1.* FROM OCI360_LB_SHAPES t1 15:57:04 4a.132 15:57:04 4a "00155_oci360_4a_132_shapes.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:06 4a "Load Balance" 15:57:06 Work Requests SELECT t1.* FROM OCI360_LB_WORKREQS t1 15:57:06 4a.133 15:57:07 4a "00156_oci360_4a_133_work_requests.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:08 4b "DNS Zones" 15:57:08 Zones SELECT t1.* FROM OCI360_DNS_ZONES t1 15:57:08 4b.134 15:57:09 4b "00157_oci360_4b_134_zones.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:11 4c "Email Delivery" 15:57:11 Approved senders SELECT t1.* FROM OCI360_EMAIL_SENDERS t1 15:57:11 4c.135 15:57:11 4c "00158_oci360_4c_135_approved_senders.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:14 4c "Email Delivery" 15:57:14 Email suppression SELECT t1.* FROM OCI360_EMAIL_SUPPR t1 15:57:14 4c.136 15:57:14 4c "00159_oci360_4c_136_email_suppression.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:17 4d "Limits" 15:57:17 Limits Service SELECT t1.* FROM OCI360_LIMITS_SERVICE t1 15:57:17 4d.137 15:57:19 4d "00160_oci360_4d_137_limits_service.html" 36 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:23 4d "Limits" 15:57:23 Limits Quota SELECT * FROM OCI360_LIMITS_QUOTA t1 15:57:23 4d.138 15:57:25 4d "00161_oci360_4d_138_limits_quota.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:26 4d "Limits" 15:57:26 Limit Value SELECT * FROM OCI360_LIMITS_VALUE t1 15:57:26 4d.139 15:57:26 4d "00162_oci360_4d_139_limit_value.html" 293 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:28 4d "Limits" 15:57:28 Limits Resource Availability SELECT * FROM OCI360_LIMITS_RES_AVAIL 15:57:28 4d.140 15:57:28 4d "00163_oci360_4d_140_limits_resource_availability.html" 290 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:31 4g "Report Usage" 15:57:31 Used Services SELECT distinct "product/service" "Service" FROM OCI360_REPORTS_USAGE t1 15:57:31 4g.141 15:57:32 4g "00164_oci360_4g_141_used_services.html" 6 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:35 4g "Report Usage" 15:57:35 Used Resources SELECT distinct "product/service" "Service", "product/resource" "Resource" FROM OCI360_REPORTS_USAGE t1 15:57:35 4g.142 15:57:36 4g "00165_oci360_4g_142_used_resources.html" 14 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:40 4g "Report Usage" 15:57:40 Resources Utilization SELECT "product/service" "Service", "product/resource" "Resource", MIN("lineItem/intervalUsageStart") "Date Min", MAX("lineItem/intervalUsageStart") "Date Max", "usage/consumedQuantityUnits" "Units", "usage/consumedQuantityMeasure" "Measure", TO_CHAR(SUM("usage/consumedQuantity")) "Total Consumed", TO_CHAR(SUM("usage/billedQuantity")) "Total Billed", TO_CHAR(SUM("usage/consumedQuantity"-"usage/billedQuantity")) "Total Non-Billed" FROM OCI360_REPORTS_USAGE t1 GROUP BY "product/service", "product/resource", "usage/consumedQuantityUnits", "usage/consumedQuantityMeasure" 15:57:40 4g.143 15:57:41 4g "00166_oci360_4g_143_resources_utilization.html" 15 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:43 4g "Report Usage" 15:57:43 Usage Corrections SELECT t1.* FROM OCI360_REPORTS_USAGE t1 WHERE "lineItem/isCorrection" != 'false' 15:57:43 4g.144 15:57:44 4g "00167_oci360_4g_144_usage_corrections.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:47 4g "Report Usage" 15:57:47 Usage Gaps WITH t1 AS ( SELECT /*+ materialize */ distinct TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE ), trange as ( select trunc(min(ENDTIMEUTC),'HH24') min, trunc(max(ENDTIMEUTC),'HH24') max FROM t1 ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 and ENDTIMEUTC is null group by seq, vdate order by seq 15:57:47 4g.145 15:57:48 4g "00168_oci360_4g_145_usage_gaps.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:51 4g "Report Usage" 15:57:51 Billed > Consumed SELECT "lineItem/intervalUsageStart" ,"lineItem/intervalUsageEnd" ,"product/service" ,"product/resource" ,"product/compartmentId" ,"product/compartmentName" ,"product/region" ,"product/availabilityDomain" ,"product/resourceId" ,TO_CHAR(TO_NUMBER("usage/consumedQuantity")) ,TO_CHAR(TO_NUMBER("usage/billedQuantity")) ,TO_CHAR(TO_NUMBER("usage/consumedQuantity") - TO_NUMBER("usage/billedQuantity")) "Difference" ,"usage/consumedQuantityUnits" ,"usage/consumedQuantityMeasure" FROM OCI360_REPORTS_USAGE WHERE TO_NUMBER("usage/billedQuantity") > TO_NUMBER("usage/consumedQuantity") 15:57:51 4g.146 15:57:52 4g "00169_oci360_4g_146_billed_consumed.html" 10 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:54 4g "Report Usage" 15:57:54 Distinct Objects per Resource SELECT resource_product, substr(resource_id,1,instr(resource_id,'.',1,4)-1) resource_id_pref, count(*) total_distinct_resources FROM ( select distinct "product/resource" resource_product, "product/resourceId" resource_id from OCI360_REPORTS_USAGE ) GROUP BY resource_product, substr(resource_id,1,instr(resource_id,'.',1,4)-1) ORDER BY resource_id_pref,resource_product,total_distinct_resources DESC 15:57:54 4g.147 15:57:54 4g "00170_oci360_4g_147_distinct_objects_per_resource.html" 17 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:55 4g "Report Usage" 15:57:55 Service Resources - Sample lines SELECT t1.* FROM OCI360_REPORTS_USAGE SAMPLE(0.1) t1 15:57:55 4g.148 15:57:55 4g "00171_oci360_4g_148_service_resources_sample_lines.html" 12 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:56 4g "Report Usage" 15:57:56 Non-OCID Resources select distinct "product/resource" resource_product, "product/resourceId" resource_id from OCI360_REPORTS_USAGE where substr("product/resourceId",1,instr("product/resourceId",'.',1,1)-1) != 'ocid1' and "product/resourceId" is not null 15:57:56 4g.149 15:57:57 4g "00172_oci360_4g_149_nonocid_resources.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:57:59 4g "Report Usage" 15:57:59 Service: DATABASE - MS OCPUS between 2020-05-29 and 2020-06-28 WITH tot as (SELECT SUM("usage/consumedQuantity") total_global FROM OCI360_REPORTS_USAGE where "product/service" = 'DATABASE' AND TRIM("usage/consumedQuantityUnits" || ' ' || "usage/consumedQuantityMeasure") = 'MS OCPUS' ) SELECT "product/resource" || ' - ' || SUM("usage/consumedQuantity") resource_name, SUM("usage/consumedQuantity") total, trim(to_char(round(SUM("usage/consumedQuantity")/decode(total_global,0,1,total_global),4)*100,'990D99')) percent FROM OCI360_REPORTS_USAGE, tot where "product/service" = 'DATABASE' AND TRIM("usage/consumedQuantityUnits" || ' ' || "usage/consumedQuantityMeasure") = 'MS OCPUS' GROUP BY "product/resource",total_global 15:57:59 4g.150 15:57:59 4g "00173_oci360_4g_150_service_database_ms_ocpus.html" 15:58:00 4g "00174_oci360_4g_150_service_database_ms_ocpus_pie_chart.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:02 4g "Report Usage" 15:58:02 Service: COMPUTE - MS OCPUS between 2020-05-29 and 2020-06-28 WITH tot as (SELECT SUM("usage/consumedQuantity") total_global FROM OCI360_REPORTS_USAGE where "product/service" = 'COMPUTE' AND TRIM("usage/consumedQuantityUnits" || ' ' || "usage/consumedQuantityMeasure") = 'MS OCPUS' ) SELECT "product/resource" || ' - ' || SUM("usage/consumedQuantity") resource_name, SUM("usage/consumedQuantity") total, trim(to_char(round(SUM("usage/consumedQuantity")/decode(total_global,0,1,total_global),4)*100,'990D99')) percent FROM OCI360_REPORTS_USAGE, tot where "product/service" = 'COMPUTE' AND TRIM("usage/consumedQuantityUnits" || ' ' || "usage/consumedQuantityMeasure") = 'MS OCPUS' GROUP BY "product/resource",total_global 15:58:02 4g.151 15:58:02 4g "00175_oci360_4g_151_service_compute_ms_ocpus.html" 15:58:04 4g "00176_oci360_4g_151_service_compute_ms_ocpus_pie_chart.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:05 4g "Report Usage" 15:58:05 Service: BLOCK_STORAGE - GB_MS STORAGE_SIZE between 2020-05-29 and 2020-06-28 WITH tot as (SELECT SUM("usage/consumedQuantity") total_global FROM OCI360_REPORTS_USAGE where "product/service" = 'BLOCK_STORAGE' AND TRIM("usage/consumedQuantityUnits" || ' ' || "usage/consumedQuantityMeasure") = 'GB_MS STORAGE_SIZE' ) SELECT "product/resource" || ' - ' || SUM("usage/consumedQuantity") resource_name, SUM("usage/consumedQuantity") total, trim(to_char(round(SUM("usage/consumedQuantity")/decode(total_global,0,1,total_global),4)*100,'990D99')) percent FROM OCI360_REPORTS_USAGE, tot where "product/service" = 'BLOCK_STORAGE' AND TRIM("usage/consumedQuantityUnits" || ' ' || "usage/consumedQuantityMeasure") = 'GB_MS STORAGE_SIZE' GROUP BY "product/resource",total_global 15:58:05 4g.152 15:58:05 4g "00177_oci360_4g_152_service_blockstorage_gbms_storagesize.html" 15:58:07 4g "00178_oci360_4g_152_service_blockstorage_gbms_storagesize_pie_chart.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:08 4g "Report Usage" 15:58:08 Services - Hourly - Total Usage 15:58:08 4g.153 15:58:09 4g "00179_oci360_4g_153_services_hourly_total_usage.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:11 4g "Report Usage" 15:58:11 Resource: PIC_BLOCK_STORAGE_STANDARD between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_BLOCK_STORAGE_STANDARD' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:58:11 4g.154 15:58:12 4g "00180_oci360_4g_154_resource_picblockstoragestandard.html" 15:58:16 4g "00181_oci360_4g_154_resource_picblockstoragestandard_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:19 4g "Report Usage" 15:58:19 Resource: PIC_BLOCK_STORAGE_STANDARD_FREE between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_BLOCK_STORAGE_STANDARD_FREE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:58:19 4g.155 15:58:20 4g "00182_oci360_4g_155_resource_picblockstoragestandardfree.html" 15:58:21 4g "00183_oci360_4g_155_resource_picblockstoragestandardfree_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:23 4g "Report Usage" 15:58:23 Resource: PIC_COMPUTE_OUTBOUND_DATA_TRANSFER between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_COMPUTE_OUTBOUND_DATA_TRANSFER' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:58:23 4g.156 15:58:24 4g "00184_oci360_4g_156_resource_piccomputeoutbounddatatransfer.html" 15:58:26 4g "00185_oci360_4g_156_resource_piccomputeoutbounddatatransfer_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:27 4g "Report Usage" 15:58:27 Resource: PIC_COMPUTE_STANDARD_E2 between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_COMPUTE_STANDARD_E2' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:58:27 4g.157 15:58:28 4g "00186_oci360_4g_157_resource_piccomputestandarde2.html" 15:58:30 4g "00187_oci360_4g_157_resource_piccomputestandarde2_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:31 4g "Report Usage" 15:58:31 Resource: PIC_COMPUTE_VM_STANDARD_E2_MICRO_FREE between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_COMPUTE_VM_STANDARD_E2_MICRO_FREE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:58:31 4g.158 15:58:31 4g "00188_oci360_4g_158_resource_piccomputevmstandarde2microfree.html" 15:58:33 4g "00189_oci360_4g_158_resource_piccomputevmstandarde2microfree_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:35 4g "Report Usage" 15:58:35 Resource: PIC_DATABASE_CLOUD_ENTERPRISE_EDITION between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_DATABASE_CLOUD_ENTERPRISE_EDITION' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:58:35 4g.159 15:58:36 4g "00190_oci360_4g_159_resource_picdatabasecloudenterpriseedition.html" 15:58:38 4g "00191_oci360_4g_159_resource_picdatabasecloudenterpriseedition_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:42 4g "Report Usage" 15:58:42 Resource: PIC_METRIC_CONSUMPTION between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_METRIC_CONSUMPTION' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:58:42 4g.160 15:58:43 4g "00192_oci360_4g_160_resource_picmetricconsumption.html" 15:58:45 4g "00193_oci360_4g_160_resource_picmetricconsumption_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:47 4g "Report Usage" 15:58:47 Resource: PIC_OBJECT_STORAGE_REQUEST_TIERED between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_OBJECT_STORAGE_REQUEST_TIERED' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:58:47 4g.161 15:58:48 4g "00194_oci360_4g_161_resource_picobjectstoragerequesttiered.html" 15:58:50 4g "00195_oci360_4g_161_resource_picobjectstoragerequesttiered_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:51 4g "Report Usage" 15:58:51 Resource: PIC_OBJECT_STORAGE_TIERED between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_OBJECT_STORAGE_TIERED' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:58:51 4g.162 15:58:51 4g "00196_oci360_4g_162_resource_picobjectstoragetiered.html" 15:58:53 4g "00197_oci360_4g_162_resource_picobjectstoragetiered_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:58:55 4g "Report Usage" 15:58:55 Resource: PIC_STANDARD_CONVERSION_METER_DBAAS between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_STANDARD_CONVERSION_METER_DBAAS' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:58:55 4g.163 15:58:56 4g "00198_oci360_4g_163_resource_picstandardconversionmeterdbaas.html" 15:58:58 4g "00199_oci360_4g_163_resource_picstandardconversionmeterdbaas_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:01 4g "Report Usage" 15:59:01 Resource: PIC_STANDARD_CONVERSION_METER_DBAAS between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_STANDARD_CONVERSION_METER_DBAAS' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:59:01 4g.164 15:59:02 4g "00200_oci360_4g_164_resource_picstandardconversionmeterdbaas.html" 15:59:07 4g "00201_oci360_4g_164_resource_picstandardconversionmeterdbaas_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:10 4g "Report Usage" 15:59:10 Resource: PIC_STANDARD_PERFORMANCE between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_STANDARD_PERFORMANCE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:59:10 4g.165 15:59:10 4g "00202_oci360_4g_165_resource_picstandardperformance.html" 15:59:12 4g "00203_oci360_4g_165_resource_picstandardperformance_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:14 4g "Report Usage" 15:59:14 Resource: PIC_STANDARD_STORAGE between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_STANDARD_STORAGE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:59:14 4g.166 15:59:15 4g "00204_oci360_4g_166_resource_picstandardstorage.html" 15:59:17 4g "00205_oci360_4g_166_resource_picstandardstorage_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:19 4g "Report Usage" 15:59:19 Resources - Hourly - Total Usage 15:59:19 4g.167 15:59:19 4g "00206_oci360_4g_167_resources_hourly_total_usage.html" 13 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:21 4g "Report Usage" 15:59:21 Computes - Hourly - Constant Usage SELECT DISTINCT "product/service" ,"product/resource" ,"product/compartmentId" ,"product/compartmentName" ,"product/region" ,"product/availabilityDomain" ,"product/resourceId" ,TO_CHAR(TO_NUMBER("usage/consumedQuantity")) ,TO_CHAR(TO_NUMBER("usage/billedQuantity")) ,TO_CHAR(TO_NUMBER("usage/consumedQuantity") - TO_NUMBER("usage/billedQuantity")) "Difference" ,"usage/consumedQuantityUnits" ,"usage/consumedQuantityMeasure" FROM OCI360_REPORTS_USAGE WHERE substr("product/resourceId",1,instr("product/resourceId",'.',1,2)-1) = 'ocid1.instance' AND ("product/resource", "product/resourceId") NOT IN ( SELECT "product/resource", "product/resourceId" FROM OCI360_REPORTS_USAGE_TEMP ) ORDER BY "product/service" ,"product/resource" ,"product/resourceId" 15:59:21 4g.168 15:59:21 4g "00207_oci360_4g_168_computes_hourly_constant_usage.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:29 4g "Report Usage" 15:59:29 Compute: ocid1.instance.oc1.iad.000000000000000000000000000000000000000000000000000000000571 Res: PIC_COMPUTE_STANDARD_E2 between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_COMPUTE_STANDARD_E2' AND "product/resourceId" = 'ocid1.instance.oc1.iad.000000000000000000000000000000000000000000000000000000000571' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:59:29 4g.169 15:59:30 4g "00208_oci360_4g_169_compute_ocid1instanceoc1iadanuwcljrucm3wzacvhlxlfh4oif5kml4votppgphdson7minggy2ojqj5vra_res_piccomputestandarde2.html" 15:59:34 4g "00209_oci360_4g_169_compute_ocid1instanceoc1iadanuwcljrucm3wzacvhlxlfh4oif5kml4votppgphdson7minggy2ojqj5vra_res_piccomputestandarde2_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:35 4g "Report Usage" 15:59:35 Computes - Hourly - Total Usage 15:59:35 4g.170 15:59:36 4g "00210_oci360_4g_170_computes_hourly_total_usage.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:39 4g "Report Usage" 15:59:39 Other Objects - Hourly - Constant Usage SELECT DISTINCT t1."product/service" ,t1."product/resource" ,t1."product/compartmentId" ,t1."product/compartmentName" ,t1."product/region" ,t1."product/availabilityDomain" ,t1."product/resourceId" ,TO_CHAR(TO_NUMBER(t1."usage/consumedQuantity")) ,TO_CHAR(TO_NUMBER(t1."usage/billedQuantity")) ,TO_CHAR(TO_NUMBER(t1."usage/consumedQuantity") - TO_NUMBER(t1."usage/billedQuantity")) "Difference" ,t1."usage/consumedQuantityUnits" ,t1."usage/consumedQuantityMeasure" FROM OCI360_REPORTS_USAGE t1, OCI360_REPORTS_USAGE_TEMP t2 WHERE ( substr(t1."product/resourceId",1,instr(t1."product/resourceId",'.',1,2)-1) NOT IN ('ocid1.instance', 'ocid1.volumebackup', 'ocid1.bootvolumebackup', 'ocid1.volume', 'ocid1.bootvolume', 'ocid1.vnic') OR nvl(substr(t1."product/resourceId",1,instr(t1."product/resourceId",'.',1,1)-1),'x') != 'ocid1' ) AND t1."product/resourceId" = t2."product/resourceId" (+) AND t1."product/resource" = t2."product/resource" (+) AND t2."product/resource" is null AND t2."product/resourceId" is null 15:59:39 4g.171 15:59:39 4g "00211_oci360_4g_171_other_objects_hourly_constant_usage.html" 5 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:41 4g "Report Usage" 15:59:41 Object: ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231 Res: PIC_BLOCK_STORAGE_STANDARD between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_BLOCK_STORAGE_STANDARD' AND "product/resourceId" = 'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:59:41 4g.172 15:59:42 4g "00212_oci360_4g_172_object_ocid1dbsystemoc1iadabuwcljsin6q6tm34xkv2c4frlcttkvnxc5sijoalvz6setbs2dw26hcxvxq_res_picblockstoragestandard.html" 15:59:44 4g "00213_oci360_4g_172_object_ocid1dbsystemoc1iadabuwcljsin6q6tm34xkv2c4frlcttkvnxc5sijoalvz6setbs2dw26hcxvxq_res_picblockstoragestandard_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:46 4g "Report Usage" 15:59:46 Object: ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232 Res: PIC_BLOCK_STORAGE_STANDARD between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_BLOCK_STORAGE_STANDARD' AND "product/resourceId" = 'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:59:46 4g.173 15:59:46 4g "00214_oci360_4g_173_object_ocid1dbsystemoc1iadabuwcljsnfve5nklwo622u3aehk77wdxrw6bnlg7tp7ekpl6dmhazmopamga_res_picblockstoragestandard.html" 15:59:50 4g "00215_oci360_4g_173_object_ocid1dbsystemoc1iadabuwcljsnfve5nklwo622u3aehk77wdxrw6bnlg7tp7ekpl6dmhazmopamga_res_picblockstoragestandard_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:53 4g "Report Usage" 15:59:53 Object: UnknownBucket Res: PIC_COMPUTE_OUTBOUND_DATA_TRANSFER between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_COMPUTE_OUTBOUND_DATA_TRANSFER' AND "product/resourceId" = 'UnknownBucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:59:53 4g.174 15:59:55 4g "00216_oci360_4g_174_object_unknownbucket_res_piccomputeoutbounddatatransfer.html" 15:59:59 4g "00217_oci360_4g_174_object_unknownbucket_res_piccomputeoutbounddatatransfer_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15:59:59 4g "Report Usage" 15:59:59 Object: oci360 Res: PIC_COMPUTE_OUTBOUND_DATA_TRANSFER between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_COMPUTE_OUTBOUND_DATA_TRANSFER' AND "product/resourceId" = 'oci360' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 15:59:59 4g.175 16:00:00 4g "00218_oci360_4g_175_object_oci360_res_piccomputeoutbounddatatransfer.html" 16:00:03 4g "00219_oci360_4g_175_object_oci360_res_piccomputeoutbounddatatransfer_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:05 4g "Report Usage" 16:00:05 Object: oci360_bucket Res: PIC_COMPUTE_OUTBOUND_DATA_TRANSFER between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_COMPUTE_OUTBOUND_DATA_TRANSFER' AND "product/resourceId" = 'oci360_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:05 4g.176 16:00:06 4g "00220_oci360_4g_176_object_oci360bucket_res_piccomputeoutbounddatatransfer.html" 16:00:10 4g "00221_oci360_4g_176_object_oci360bucket_res_piccomputeoutbounddatatransfer_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:12 4g "Report Usage" 16:00:12 Object: pnb_bucket Res: PIC_COMPUTE_OUTBOUND_DATA_TRANSFER between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_COMPUTE_OUTBOUND_DATA_TRANSFER' AND "product/resourceId" = 'pnb_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:12 4g.177 16:00:12 4g "00222_oci360_4g_177_object_pnbbucket_res_piccomputeoutbounddatatransfer.html" 16:00:14 4g "00223_oci360_4g_177_object_pnbbucket_res_piccomputeoutbounddatatransfer_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:16 4g "Report Usage" 16:00:16 Object: ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231 Res: PIC_DATABASE_CLOUD_ENTERPRISE_EDITION between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_DATABASE_CLOUD_ENTERPRISE_EDITION' AND "product/resourceId" = 'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:16 4g.178 16:00:17 4g "00224_oci360_4g_178_object_ocid1dbsystemoc1iadabuwcljsin6q6tm34xkv2c4frlcttkvnxc5sijoalvz6setbs2dw26hcxvxq_res_picdatabasecloudenterpriseedition.html" 16:00:21 4g "00225_oci360_4g_178_object_ocid1dbsystemoc1iadabuwcljsin6q6tm34xkv2c4frlcttkvnxc5sijoalvz6setbs2dw26hcxvxq_res_picdatabasecloudenterpriseedition_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:24 4g "Report Usage" 16:00:24 Object: ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232 Res: PIC_DATABASE_CLOUD_ENTERPRISE_EDITION between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_DATABASE_CLOUD_ENTERPRISE_EDITION' AND "product/resourceId" = 'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:24 4g.179 16:00:25 4g "00226_oci360_4g_179_object_ocid1dbsystemoc1iadabuwcljsnfve5nklwo622u3aehk77wdxrw6bnlg7tp7ekpl6dmhazmopamga_res_picdatabasecloudenterpriseedition.html" 16:00:26 4g "00227_oci360_4g_179_object_ocid1dbsystemoc1iadabuwcljsnfve5nklwo622u3aehk77wdxrw6bnlg7tp7ekpl6dmhazmopamga_res_picdatabasecloudenterpriseedition_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:27 4g "Report Usage" 16:00:27 Object: oci_autonomous_database Res: PIC_METRIC_CONSUMPTION between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_METRIC_CONSUMPTION' AND "product/resourceId" = 'oci_autonomous_database' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:27 4g.180 16:00:28 4g "00228_oci360_4g_180_object_ociautonomousdatabase_res_picmetricconsumption.html" 16:00:29 4g "00229_oci360_4g_180_object_ociautonomousdatabase_res_picmetricconsumption_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:31 4g "Report Usage" 16:00:31 Object: UnknownBucket Res: PIC_OBJECT_STORAGE_REQUEST_TIERED between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_OBJECT_STORAGE_REQUEST_TIERED' AND "product/resourceId" = 'UnknownBucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:31 4g.181 16:00:31 4g "00230_oci360_4g_181_object_unknownbucket_res_picobjectstoragerequesttiered.html" 16:00:33 4g "00231_oci360_4g_181_object_unknownbucket_res_picobjectstoragerequesttiered_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:34 4g "Report Usage" 16:00:34 Object: oci360 Res: PIC_OBJECT_STORAGE_REQUEST_TIERED between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_OBJECT_STORAGE_REQUEST_TIERED' AND "product/resourceId" = 'oci360' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:34 4g.182 16:00:35 4g "00232_oci360_4g_182_object_oci360_res_picobjectstoragerequesttiered.html" 16:00:37 4g "00233_oci360_4g_182_object_oci360_res_picobjectstoragerequesttiered_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:39 4g "Report Usage" 16:00:39 Object: oci360_bucket Res: PIC_OBJECT_STORAGE_REQUEST_TIERED between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_OBJECT_STORAGE_REQUEST_TIERED' AND "product/resourceId" = 'oci360_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:39 4g.183 16:00:40 4g "00234_oci360_4g_183_object_oci360bucket_res_picobjectstoragerequesttiered.html" 16:00:43 4g "00235_oci360_4g_183_object_oci360bucket_res_picobjectstoragerequesttiered_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:49 4g "Report Usage" 16:00:49 Object: pnb_bucket Res: PIC_OBJECT_STORAGE_REQUEST_TIERED between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_OBJECT_STORAGE_REQUEST_TIERED' AND "product/resourceId" = 'pnb_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:49 4g.184 16:00:49 4g "00236_oci360_4g_184_object_pnbbucket_res_picobjectstoragerequesttiered.html" 16:00:50 4g "00237_oci360_4g_184_object_pnbbucket_res_picobjectstoragerequesttiered_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:52 4g "Report Usage" 16:00:52 Object: idgimbpbaoa7/oci360 Res: PIC_OBJECT_STORAGE_TIERED between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_OBJECT_STORAGE_TIERED' AND "product/resourceId" = 'idgimbpbaoa7/oci360' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:52 4g.185 16:00:53 4g "00238_oci360_4g_185_object_idgimbpbaoa7oci360_res_picobjectstoragetiered.html" 16:00:54 4g "00239_oci360_4g_185_object_idgimbpbaoa7oci360_res_picobjectstoragetiered_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:55 4g "Report Usage" 16:00:55 Object: idgimbpbaoa7/oci360_bucket Res: PIC_OBJECT_STORAGE_TIERED between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_OBJECT_STORAGE_TIERED' AND "product/resourceId" = 'idgimbpbaoa7/oci360_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:55 4g.186 16:00:56 4g "00240_oci360_4g_186_object_idgimbpbaoa7oci360bucket_res_picobjectstoragetiered.html" 16:00:57 4g "00241_oci360_4g_186_object_idgimbpbaoa7oci360bucket_res_picobjectstoragetiered_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:00:58 4g "Report Usage" 16:00:58 Object: idgimbpbaoa7/pnb_bucket Res: PIC_OBJECT_STORAGE_TIERED between 2020-05-29 and 2020-06-28 WITH t1 AS ( SELECT SUM("usage/consumedQuantity") CONSUMED_AMOUNT, SUM("usage/billedQuantity") BILLED_AMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_USAGE WHERE "product/resource" = 'PIC_OBJECT_STORAGE_TIERED' AND "product/resourceId" = 'idgimbpbaoa7/pnb_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_USAGE ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(SUM(CONSUMED_AMOUNT),0)) line1, TO_CHAR(NVL(SUM(BILLED_AMOUNT),0)) line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:00:58 4g.187 16:00:59 4g "00242_oci360_4g_187_object_idgimbpbaoa7pnbbucket_res_picobjectstoragetiered.html" 16:01:00 4g "00243_oci360_4g_187_object_idgimbpbaoa7pnbbucket_res_picobjectstoragetiered_line_chart.html" 718 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:01 4g "Report Usage" 16:01:01 Other Objects - Hourly - Total Usage 16:01:01 4g.188 16:01:02 4g "00244_oci360_4g_188_other_objects_hourly_total_usage.html" 16 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:03 4h "Cloud Costs" 16:01:03 Used Services SELECT distinct "product/service" "Service" FROM OCI360_REPORTS_COST t1 16:01:03 4h.189 16:01:04 4h "00245_oci360_4h_189_used_services.html" 6 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:08 4h "Cloud Costs" 16:01:08 Used Resources SELECT distinct "product/service" "Service", "product/resourceId" "Resource" FROM OCI360_REPORTS_COST t1 16:01:08 4h.190 16:01:10 4h "00246_oci360_4h_190_used_resources.html" 36 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:12 4h "Cloud Costs" 16:01:12 Resources Unit Prices select "product/service", "product/region", "cost/subscriptionId", "cost/productSku", "cost/unitPrice", "cost/unitPriceOverage", "cost/currencyCode", "cost/billingUnitReadable", "cost/overageFlag", min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')) MIN_USAGE_END, max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')) MAX_USAGE_END from OCI360_REPORTS_COST GROUP BY "product/service", "product/region", "cost/subscriptionId", "cost/productSku", "cost/unitPrice", "cost/unitPriceOverage", "cost/currencyCode", "cost/billingUnitReadable", "cost/overageFlag" 16:01:12 4h.191 16:01:13 4h "00247_oci360_4h_191_resources_unit_prices.html" 17 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:17 4h "Cloud Costs" 16:01:17 Services Utilization SELECT "product/service" "Service", MIN("lineItem/intervalUsageStart") "Date Min", MAX("lineItem/intervalUsageStart") "Date Max", "cost/subscriptionId" "subscriptionId", "cost/productSku" "SKU", "cost/currencyCode" "Currency", "cost/billingUnitReadable" "Units", TO_CHAR(SUM("cost/myCost")) "Total Cost" FROM OCI360_REPORTS_COST t1 GROUP BY "product/service", "cost/subscriptionId", "cost/productSku", "cost/currencyCode", "cost/billingUnitReadable" HAVING SUM("cost/myCost")>0 16:01:17 4h.192 16:01:18 4h "00248_oci360_4h_192_services_utilization.html" 6 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:20 4h "Cloud Costs" 16:01:20 Resources Utilization SELECT "product/service" "Service", "product/compartmentId", "product/compartmentName", "product/region", "product/availabilityDomain", "product/resourceId", MIN("lineItem/intervalUsageStart") "Date Min", MAX("lineItem/intervalUsageStart") "Date Max", "cost/subscriptionId" "subscriptionId", "cost/productSku" "SKU", "cost/currencyCode" "Currency", "cost/billingUnitReadable" "Units", TO_CHAR(SUM("cost/myCost")) "Total Cost" FROM OCI360_REPORTS_COST t1 GROUP BY "product/service", "product/compartmentId", "product/compartmentName", "product/region", "product/availabilityDomain", "product/resourceId","cost/subscriptionId", "cost/productSku", "cost/currencyCode", "cost/billingUnitReadable" HAVING SUM("cost/myCost")>0 16:01:20 4h.193 16:01:21 4h "00249_oci360_4h_193_resources_utilization.html" 35 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:23 4h "Cloud Costs" 16:01:23 Cost Corrections SELECT t1.* FROM OCI360_REPORTS_COST t1 WHERE "lineItem/isCorrection" != 'false' 16:01:23 4h.194 16:01:24 4h "00250_oci360_4h_194_cost_corrections.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:27 4h "Cloud Costs" 16:01:27 Cost Overage SELECT t1.* FROM OCI360_REPORTS_COST t1 WHERE "cost/myCostOverage" > 0 16:01:27 4h.195 16:01:28 4h "00251_oci360_4h_195_cost_overage.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:32 4h "Cloud Costs" 16:01:32 Cost Gaps WITH t1 AS ( SELECT /*+ materialize */ distinct TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST ), trange as ( select trunc(min(ENDTIMEUTC),'HH24') min, trunc(max(ENDTIMEUTC),'HH24') max FROM t1 ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 and ENDTIMEUTC is null group by seq, vdate order by seq 16:01:32 4h.196 16:01:33 4h "00252_oci360_4h_196_cost_gaps.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:38 4h "Cloud Costs" 16:01:38 Distinct Objects per Resource SELECT "product/service", substr(resource_id,1,instr(resource_id,'.',1,4)-1) resource_id_pref, count(*) total_distinct_resources FROM ( select distinct "product/service", "product/resourceId" resource_id from OCI360_REPORTS_COST ) GROUP BY "product/service", substr(resource_id,1,instr(resource_id,'.',1,4)-1) ORDER BY resource_id_pref,total_distinct_resources DESC 16:01:38 4h.197 16:01:38 4h "00253_oci360_4h_197_distinct_objects_per_resource.html" 8 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:40 4h "Cloud Costs" 16:01:40 Usage Costs - Sample lines (0.1%) SELECT t1.* FROM OCI360_REPORTS_COST SAMPLE(0.1) t1 16:01:40 4h.198 16:01:41 4h "00254_oci360_4h_198_usage_costs_sample_lines_01.html" 9 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:44 4h "Cloud Costs" 16:01:44 Non-OCID Resources select distinct "product/service", "product/resourceId" resource_id from OCI360_REPORTS_COST where substr("product/resourceId",1,instr("product/resourceId",'.',1,1)-1) != 'ocid1' and "product/resourceId" is not null 16:01:44 4h.199 16:01:45 4h "00255_oci360_4h_199_nonocid_resources.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:48 4i.1 "Per Hour" 16:01:48 Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE 1 = 1 GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:01:48 4i.1.200 16:01:49 4i.1 "00256_oci360_4i.1_200_total_costs.html" 16:01:51 4i.1 "00257_oci360_4i.1_200_total_costs_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:01:55 4i.1 "Per Hour" 16:01:55 Compartment: A, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000220' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:01:55 4i.1.201 16:01:57 4i.1 "00258_oci360_4i.1_201_compartment_a.html" 16:02:01 4i.1 "00259_oci360_4i.1_201_compartment_a_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:01 4i.1 "Per Hour" 16:02:01 Compartment: Dev, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000225' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:01 4i.1.202 16:02:02 4i.1 "00260_oci360_4i.1_202_compartment_dev.html" 16:02:04 4i.1 "00261_oci360_4i.1_202_compartment_dev_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:05 4i.1 "Per Hour" 16:02:05 Compartment: ManagedCompartmentForPaaS, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000228' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:05 4i.1.203 16:02:05 4i.1 "00262_oci360_4i.1_203_compartment_managedcompartmentforpaas.html" 16:02:07 4i.1 "00263_oci360_4i.1_203_compartment_managedcompartmentforpaas_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:09 4i.1 "Per Hour" 16:02:09 Compartment: Ops, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000217' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:09 4i.1.204 16:02:09 4i.1 "00264_oci360_4i.1_204_compartment_ops.html" 16:02:11 4i.1 "00265_oci360_4i.1_204_compartment_ops_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:12 4i.1 "Per Hour" 16:02:12 Compartment: Test, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000227' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:12 4i.1.205 16:02:13 4i.1 "00266_oci360_4i.1_205_compartment_test.html" 16:02:15 4i.1 "00267_oci360_4i.1_205_compartment_test_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:18 4i.1 "Per Hour" 16:02:18 Compartment: compt_dev, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000216' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:18 4i.1.206 16:02:19 4i.1 "00268_oci360_4i.1_206_compartment_comptdev.html" 16:02:25 4i.1 "00269_oci360_4i.1_206_compartment_comptdev_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:27 4i.1 "Per Hour" 16:02:27 Compartment: compt_dev_app, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000210' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:27 4i.1.207 16:02:28 4i.1 "00270_oci360_4i.1_207_compartment_comptdevapp.html" 16:02:31 4i.1 "00271_oci360_4i.1_207_compartment_comptdevapp_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:33 4i.1 "Per Hour" 16:02:33 Compartment: compt_dev_db, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000229' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:33 4i.1.208 16:02:34 4i.1 "00272_oci360_4i.1_208_compartment_comptdevdb.html" 16:02:36 4i.1 "00273_oci360_4i.1_208_compartment_comptdevdb_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:40 4i.1 "Per Hour" 16:02:40 Compartment: compt_dev_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000226' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:40 4i.1.209 16:02:42 4i.1 "00274_oci360_4i.1_209_compartment_comptdevnet.html" 16:02:44 4i.1 "00275_oci360_4i.1_209_compartment_comptdevnet_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:46 4i.1 "Per Hour" 16:02:46 Compartment: compt_prod, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000218' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:46 4i.1.210 16:02:47 4i.1 "00276_oci360_4i.1_210_compartment_comptprod.html" 16:02:51 4i.1 "00277_oci360_4i.1_210_compartment_comptprod_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:53 4i.1 "Per Hour" 16:02:53 Compartment: compt_prod_app, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000224' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:53 4i.1.211 16:02:53 4i.1 "00278_oci360_4i.1_211_compartment_comptprodapp.html" 16:02:54 4i.1 "00279_oci360_4i.1_211_compartment_comptprodapp_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:55 4i.1 "Per Hour" 16:02:55 Compartment: compt_prod_db, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000221' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:55 4i.1.212 16:02:56 4i.1 "00280_oci360_4i.1_212_compartment_comptproddb.html" 16:02:58 4i.1 "00281_oci360_4i.1_212_compartment_comptproddb_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:02:59 4i.1 "Per Hour" 16:02:59 Compartment: compt_prod_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000219' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:02:59 4i.1.213 16:03:00 4i.1 "00282_oci360_4i.1_213_compartment_comptprodnet.html" 16:03:02 4i.1 "00283_oci360_4i.1_213_compartment_comptprodnet_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:03:03 4i.1 "Per Hour" 16:03:03 Compartment: compt_ss, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000213' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:03:03 4i.1.214 16:03:04 4i.1 "00284_oci360_4i.1_214_compartment_comptss.html" 16:03:06 4i.1 "00285_oci360_4i.1_214_compartment_comptss_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:03:08 4i.1 "Per Hour" 16:03:08 Compartment: compt_ss_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000214' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:03:08 4i.1.215 16:03:09 4i.1 "00286_oci360_4i.1_215_compartment_comptssnet.html" 16:03:14 4i.1 "00287_oci360_4i.1_215_compartment_comptssnet_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:03:17 4i.1 "Per Hour" 16:03:17 Compartment: compt_test, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000215' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:03:17 4i.1.216 16:03:18 4i.1 "00288_oci360_4i.1_216_compartment_compttest.html" 16:03:19 4i.1 "00289_oci360_4i.1_216_compartment_compttest_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:03:22 4i.1 "Per Hour" 16:03:22 Compartment: compt_test_app, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000212' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:03:22 4i.1.217 16:03:23 4i.1 "00290_oci360_4i.1_217_compartment_compttestapp.html" 16:03:25 4i.1 "00291_oci360_4i.1_217_compartment_compttestapp_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:03:28 4i.1 "Per Hour" 16:03:28 Compartment: compt_test_db, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000223' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:03:28 4i.1.218 16:03:30 4i.1 "00292_oci360_4i.1_218_compartment_compttestdb.html" 16:03:33 4i.1 "00293_oci360_4i.1_218_compartment_compttestdb_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:03:35 4i.1 "Per Hour" 16:03:35 Compartment: compt_test_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000222' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:03:35 4i.1.219 16:03:36 4i.1 "00294_oci360_4i.1_219_compartment_compttestnet.html" 16:03:40 4i.1 "00295_oci360_4i.1_219_compartment_compttestnet_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:03:43 4i.1 "Per Hour" 16:03:43 Compartment: dbarj, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.tenancy.oc1..000000000000000000000000000000000000000000000000000000000686' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:03:43 4i.1.220 16:03:45 4i.1 "00296_oci360_4i.1_220_compartment_dbarj.html" 16:03:46 4i.1 "00297_oci360_4i.1_220_compartment_dbarj_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:03:48 4i.1 "Per Hour" 16:03:48 Compartment: enkitec_br, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000211' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:03:48 4i.1.221 16:03:48 4i.1 "00298_oci360_4i.1_221_compartment_enkitecbr.html" 16:03:50 4i.1 "00299_oci360_4i.1_221_compartment_enkitecbr_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:03:51 4i.1 "Per Hour" 16:03:51 All Compartments - Total Costs 16:03:51 4i.1.222 16:03:53 4i.1 "00300_oci360_4i.1_222_all_compartments_total_costs.html" 21 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:03:57 4i.1 "Per Hour" 16:03:57 Service: BLOCK_STORAGE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'BLOCK_STORAGE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:03:57 4i.1.223 16:03:58 4i.1 "00301_oci360_4i.1_223_service_blockstorage.html" 16:04:01 4i.1 "00302_oci360_4i.1_223_service_blockstorage_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:04:05 4i.1 "Per Hour" 16:04:05 Service: COMPUTE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'COMPUTE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:04:05 4i.1.224 16:04:06 4i.1 "00303_oci360_4i.1_224_service_compute.html" 16:04:09 4i.1 "00304_oci360_4i.1_224_service_compute_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:04:12 4i.1 "Per Hour" 16:04:12 Service: DATABASE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'DATABASE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:04:12 4i.1.225 16:04:12 4i.1 "00305_oci360_4i.1_225_service_database.html" 16:04:15 4i.1 "00306_oci360_4i.1_225_service_database_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:04:17 4i.1 "Per Hour" 16:04:17 Service: OBJECTSTORE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'OBJECTSTORE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:04:17 4i.1.226 16:04:18 4i.1 "00307_oci360_4i.1_226_service_objectstore.html" 16:04:22 4i.1 "00308_oci360_4i.1_226_service_objectstore_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:04:29 4i.1 "Per Hour" 16:04:29 All Services - Total Costs 16:04:29 4i.1.227 16:04:31 4i.1 "00309_oci360_4i.1_227_all_services_total_costs.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:04:35 4i.1 "Per Hour" 16:04:35 Product: B88322 - Block Volume, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B88322' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:04:35 4i.1.228 16:04:37 4i.1 "00310_oci360_4i.1_228_product_b88322_block_volume.html" 16:04:40 4i.1 "00311_oci360_4i.1_228_product_b88322_block_volume_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:04:41 4i.1 "Per Hour" 16:04:41 Product: B91962 - Block Volume - Performance Units, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B91962' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:04:41 4i.1.229 16:04:42 4i.1 "00312_oci360_4i.1_229_product_b91962_block_volume_performance_units.html" 16:04:43 4i.1 "00313_oci360_4i.1_229_product_b91962_block_volume_performance_units_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:04:45 4i.1 "Per Hour" 16:04:45 Product: B91961 - Block Volume - Storage, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B91961' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:04:45 4i.1.230 16:04:45 4i.1 "00314_oci360_4i.1_230_product_b91961_block_volume_storage.html" 16:04:47 4i.1 "00315_oci360_4i.1_230_product_b91961_block_volume_storage_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:04:48 4i.1 "Per Hour" 16:04:48 Product: B90570 - Database Cloud Service - Enterprise Edition, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B90570' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:04:48 4i.1.231 16:04:49 4i.1 "00316_oci360_4i.1_231_product_b90570_database_cloud_service_enterprise_edition.html" 16:04:51 4i.1 "00317_oci360_4i.1_231_product_b90570_database_cloud_service_enterprise_edition_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:04:53 4i.1 "Per Hour" 16:04:53 Product: B91627 - Object Storage - Requests, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B91627' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:04:53 4i.1.232 16:04:53 4i.1 "00318_oci360_4i.1_232_product_b91627_object_storage_requests.html" 16:04:58 4i.1 "00319_oci360_4i.1_232_product_b91627_object_storage_requests_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:05:01 4i.1 "Per Hour" 16:05:01 Product: B90425 - Standard Instance - E2, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B90425' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:05:01 4i.1.233 16:05:02 4i.1 "00320_oci360_4i.1_233_product_b90425_standard_instance_e2.html" 16:05:05 4i.1 "00321_oci360_4i.1_233_product_b90425_standard_instance_e2_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:05:05 4i.1 "Per Hour" 16:05:05 All Products - Total Costs 16:05:05 4i.1.234 16:05:06 4i.1 "00322_oci360_4i.1_234_all_products_total_costs.html" 6 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:05:14 4i.1 "Per Hour" 16:05:14 Resource: ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B90570',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B88322',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:05:14 4i.1.235 16:05:15 4i.1 "00323_oci360_4i.1_235_resource_ocid1dbsystemoc1iadabuwcljsnfve5nklwo622u3aehk77wdxrw6bnlg7tp7ekpl6dmhazmopamga.html" 16:05:19 4i.1 "00324_oci360_4i.1_235_resource_ocid1dbsystemoc1iadabuwcljsnfve5nklwo622u3aehk77wdxrw6bnlg7tp7ekpl6dmhazmopamga_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:05:23 4i.1 "Per Hour" 16:05:23 Resource: ocid1.instance.oc1.iad.000000000000000000000000000000000000000000000000000000000571, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.instance.oc1.iad.000000000000000000000000000000000000000000000000000000000571' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B90425',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:05:23 4i.1.236 16:05:25 4i.1 "00325_oci360_4i.1_236_resource_ocid1instanceoc1iadanuwcljrucm3wzacvhlxlfh4oif5kml4votppgphdson7minggy2ojqj5vra.html" 16:05:29 4i.1 "00326_oci360_4i.1_236_resource_ocid1instanceoc1iadanuwcljrucm3wzacvhlxlfh4oif5kml4votppgphdson7minggy2ojqj5vra_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:05:35 4i.1 "Per Hour" 16:05:35 Resource: ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B88322',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B90570',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:05:35 4i.1.237 16:05:36 4i.1 "00327_oci360_4i.1_237_resource_ocid1dbsystemoc1iadabuwcljsin6q6tm34xkv2c4frlcttkvnxc5sijoalvz6setbs2dw26hcxvxq.html" 16:05:38 4i.1 "00328_oci360_4i.1_237_resource_ocid1dbsystemoc1iadabuwcljsin6q6tm34xkv2c4frlcttkvnxc5sijoalvz6setbs2dw26hcxvxq_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:05:40 4i.1 "Per Hour" 16:05:40 Resource: oci360_bucket, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'oci360_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91627',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:05:40 4i.1.238 16:05:40 4i.1 "00329_oci360_4i.1_238_resource_oci360bucket.html" 16:05:43 4i.1 "00330_oci360_4i.1_238_resource_oci360bucket_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:05:45 4i.1 "Per Hour" 16:05:45 Resource: pnb_bucket, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'pnb_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91627',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:05:45 4i.1.239 16:05:46 4i.1 "00331_oci360_4i.1_239_resource_pnbbucket.html" 16:05:48 4i.1 "00332_oci360_4i.1_239_resource_pnbbucket_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:05:49 4i.1 "Per Hour" 16:05:49 Resource: UnknownBucket, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'UnknownBucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91627',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:05:49 4i.1.240 16:05:50 4i.1 "00333_oci360_4i.1_240_resource_unknownbucket.html" 16:05:52 4i.1 "00334_oci360_4i.1_240_resource_unknownbucket_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:05:55 4i.1 "Per Hour" 16:05:55 Resource: oci360, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'oci360' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91627',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:05:55 4i.1.241 16:05:57 4i.1 "00335_oci360_4i.1_241_resource_oci360.html" 16:06:01 4i.1 "00336_oci360_4i.1_241_resource_oci360_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:06:03 4i.1 "Per Hour" 16:06:03 Resource: ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000202, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000202' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91961',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91962',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:06:03 4i.1.242 16:06:03 4i.1 "00337_oci360_4i.1_242_resource_ocid1bootvolumeoc1iadabuwcljrinmeiygmp5bbfo6sl4cd5falo6asxnvf42tearaebge3lhwybpzq.html" 16:06:05 4i.1 "00338_oci360_4i.1_242_resource_ocid1bootvolumeoc1iadabuwcljrinmeiygmp5bbfo6sl4cd5falo6asxnvf42tearaebge3lhwybpzq_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:06:06 4i.1 "Per Hour" 16:06:06 Resource: ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000203, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000203' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91961',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91962',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:06:06 4i.1.243 16:06:07 4i.1 "00339_oci360_4i.1_243_resource_ocid1bootvolumeoc1iadabuwcljtev5suqzkrj2f6h3bzbb7dnmmrlmgwkb7322fapxi3n5k5yoscrpq.html" 16:06:09 4i.1 "00340_oci360_4i.1_243_resource_ocid1bootvolumeoc1iadabuwcljtev5suqzkrj2f6h3bzbb7dnmmrlmgwkb7322fapxi3n5k5yoscrpq_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:06:12 4i.1 "Per Hour" 16:06:12 Resource: ocid1.volume.oc1.iad.000000000000000000000000000000000000000000000000000000000709, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.volume.oc1.iad.000000000000000000000000000000000000000000000000000000000709' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91961',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91962',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:06:12 4i.1.244 16:06:13 4i.1 "00341_oci360_4i.1_244_resource_ocid1volumeoc1iadabuwcljskijtqhd5pwtnb7p2yttay45jblkv5lhrxd3tqeoztdcerorfcawa.html" 16:06:16 4i.1 "00342_oci360_4i.1_244_resource_ocid1volumeoc1iadabuwcljskijtqhd5pwtnb7p2yttay45jblkv5lhrxd3tqeoztdcerorfcawa_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:06:20 4i.1 "Per Hour" 16:06:20 All Resources - Total Costs 16:06:20 4i.1.245 16:06:22 4i.1 "00343_oci360_4i.1_245_all_resources_total_costs.html" 10 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:06:30 4i.1 "Per Hour" 16:06:30 Tag "tags/Oracle-Tags.CreatedBy" Top 15, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "tags/Oracle-Tags.CreatedBy" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "tags/Oracle-Tags.CreatedBy" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'oracleidentitycloudservice/user4@acme.com',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'user4@acme.com',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:06:30 4i.1.246 16:06:32 4i.1 "00344_oci360_4i.1_246_tag_tagsoracletagscreatedby_top_15.html" 16:06:36 4i.1 "00345_oci360_4i.1_246_tag_tagsoracletagscreatedby_top_15_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:06:37 4i.1 "Per Hour" 16:06:37 Tag "tags/Oracle-Tags.CreatedOn" Top 15, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "tags/Oracle-Tags.CreatedOn" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "tags/Oracle-Tags.CreatedOn" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-29T21:12:11.743Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-29T15:30:44.648Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-29T14:43:41.712Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-20T14:04:10.722Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-06-12T14:25:37.187Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-29T14:22:09.134Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-14T21:14:55.372Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:06:37 4i.1.247 16:06:38 4i.1 "00346_oci360_4i.1_247_tag_tagsoracletagscreatedon_top_15.html" 16:06:42 4i.1 "00347_oci360_4i.1_247_tag_tagsoracletagscreatedon_top_15_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:06:46 4i.1 "Per Hour" 16:06:46 Tag "tags/orcl-cloud.free-tier-retained" Top 15, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "tags/orcl-cloud.free-tier-retained" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "tags/orcl-cloud.free-tier-retained" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:06:46 4i.1.248 16:06:47 4i.1 "00348_oci360_4i.1_248_tag_tagsorclcloudfreetierretained_top_15.html" 16:06:50 4i.1 "00349_oci360_4i.1_248_tag_tagsorclcloudfreetierretained_top_15_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:06:53 4i.1 "Per Hour" 16:06:53 Tags - Total Costs 16:06:53 4i.1.249 16:06:56 4i.1 "00350_oci360_4i.1_249_tags_total_costs.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:06:58 4i.1 "Per Hour" 16:06:58 Top Compartments - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "product/compartmentId" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "product/compartmentId" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000229',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000210',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.tenancy.oc1..000000000000000000000000000000000000000000000000000000000686',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000211',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000212',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000213',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000214',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000215',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000216',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000217',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000218',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000219',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000220',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000221',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000222',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:06:58 4i.1.250 16:06:59 4i.1 "00351_oci360_4i.1_250_top_compartments_total_costs.html" 16:07:02 4i.1 "00352_oci360_4i.1_250_top_compartments_total_costs_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:07:06 4i.1 "Per Hour" 16:07:06 Top Services - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "product/service" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "product/service" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'DATABASE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'COMPUTE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'BLOCK_STORAGE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'OBJECTSTORE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:07:06 4i.1.251 16:07:07 4i.1 "00353_oci360_4i.1_251_top_services_total_costs.html" 16:07:12 4i.1 "00354_oci360_4i.1_251_top_services_total_costs_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:07:22 4i.1 "Per Hour" 16:07:22 Top Products - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B90570',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B88322',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B90425',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91961',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91627',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91962',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:07:22 4i.1.252 16:07:23 4i.1 "00355_oci360_4i.1_252_top_products_total_costs.html" 16:07:28 4i.1 "00356_oci360_4i.1_252_top_products_total_costs_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:07:31 4i.1 "Per Hour" 16:07:31 Top Resources - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "product/resourceId" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "product/resourceId" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.instance.oc1.iad.000000000000000000000000000000000000000000000000000000000571',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000202',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'oci360_bucket',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'pnb_bucket',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000203',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.volume.oc1.iad.000000000000000000000000000000000000000000000000000000000709',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'UnknownBucket',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'oci360',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:07:31 4i.1.253 16:07:32 4i.1 "00357_oci360_4i.1_253_top_resources_total_costs.html" 16:07:37 4i.1 "00358_oci360_4i.1_253_top_resources_total_costs_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:07:44 4i.1 "Per Hour" 16:07:44 Top Regions - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "product/region" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "product/region" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'us-ashburn-1',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:07:44 4i.1.254 16:07:46 4i.1 "00359_oci360_4i.1_254_top_regions_total_costs.html" 16:07:47 4i.1 "00360_oci360_4i.1_254_top_regions_total_costs_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:07:49 4i.1 "Per Hour" 16:07:49 Top ADs - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "product/availabilityDomain" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "product/availabilityDomain" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'CYtq:US-ASHBURN-AD-1',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'CYtq:US-ASHBURN-AD-2',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'CYtq:US-ASHBURN-AD-3',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:07:49 4i.1.255 16:07:50 4i.1 "00361_oci360_4i.1_255_top_ads_total_costs.html" 16:07:53 4i.1 "00362_oci360_4i.1_255_top_ads_total_costs_line_chart.html" 966 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:07:55 4i.2 "Per Day" 16:07:55 Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE 1 = 1 GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:07:55 4i.2.256 16:07:56 4i.2 "00363_oci360_4i.2_256_total_costs.html" 16:07:57 4i.2 "00364_oci360_4i.2_256_total_costs_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:07:59 4i.2 "Per Day" 16:07:59 Compartment: A, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000220' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:07:59 4i.2.257 16:08:00 4i.2 "00365_oci360_4i.2_257_compartment_a.html" 16:08:05 4i.2 "00366_oci360_4i.2_257_compartment_a_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:08:10 4i.2 "Per Day" 16:08:10 Compartment: Dev, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000225' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:08:10 4i.2.258 16:08:11 4i.2 "00367_oci360_4i.2_258_compartment_dev.html" 16:08:13 4i.2 "00368_oci360_4i.2_258_compartment_dev_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:08:16 4i.2 "Per Day" 16:08:16 Compartment: ManagedCompartmentForPaaS, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000228' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:08:16 4i.2.259 16:08:16 4i.2 "00369_oci360_4i.2_259_compartment_managedcompartmentforpaas.html" 16:08:18 4i.2 "00370_oci360_4i.2_259_compartment_managedcompartmentforpaas_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:08:19 4i.2 "Per Day" 16:08:19 Compartment: Ops, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000217' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:08:19 4i.2.260 16:08:20 4i.2 "00371_oci360_4i.2_260_compartment_ops.html" 16:08:21 4i.2 "00372_oci360_4i.2_260_compartment_ops_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:08:23 4i.2 "Per Day" 16:08:23 Compartment: Test, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000227' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:08:23 4i.2.261 16:08:24 4i.2 "00373_oci360_4i.2_261_compartment_test.html" 16:08:25 4i.2 "00374_oci360_4i.2_261_compartment_test_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:08:28 4i.2 "Per Day" 16:08:28 Compartment: compt_dev, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000216' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:08:28 4i.2.262 16:08:30 4i.2 "00375_oci360_4i.2_262_compartment_comptdev.html" 16:08:33 4i.2 "00376_oci360_4i.2_262_compartment_comptdev_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:08:35 4i.2 "Per Day" 16:08:35 Compartment: compt_dev_app, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000210' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:08:35 4i.2.263 16:08:35 4i.2 "00377_oci360_4i.2_263_compartment_comptdevapp.html" 16:08:36 4i.2 "00378_oci360_4i.2_263_compartment_comptdevapp_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:08:38 4i.2 "Per Day" 16:08:38 Compartment: compt_dev_db, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000229' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:08:38 4i.2.264 16:08:38 4i.2 "00379_oci360_4i.2_264_compartment_comptdevdb.html" 16:08:40 4i.2 "00380_oci360_4i.2_264_compartment_comptdevdb_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:08:41 4i.2 "Per Day" 16:08:41 Compartment: compt_dev_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000226' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:08:41 4i.2.265 16:08:41 4i.2 "00381_oci360_4i.2_265_compartment_comptdevnet.html" 16:08:43 4i.2 "00382_oci360_4i.2_265_compartment_comptdevnet_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:08:44 4i.2 "Per Day" 16:08:44 Compartment: compt_prod, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000218' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:08:44 4i.2.266 16:08:45 4i.2 "00383_oci360_4i.2_266_compartment_comptprod.html" 16:08:46 4i.2 "00384_oci360_4i.2_266_compartment_comptprod_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:08:49 4i.2 "Per Day" 16:08:49 Compartment: compt_prod_app, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000224' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:08:49 4i.2.267 16:08:50 4i.2 "00385_oci360_4i.2_267_compartment_comptprodapp.html" 16:08:54 4i.2 "00386_oci360_4i.2_267_compartment_comptprodapp_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:01 4i.2 "Per Day" 16:09:01 Compartment: compt_prod_db, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000221' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:01 4i.2.268 16:09:03 4i.2 "00387_oci360_4i.2_268_compartment_comptproddb.html" 16:09:04 4i.2 "00388_oci360_4i.2_268_compartment_comptproddb_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:06 4i.2 "Per Day" 16:09:06 Compartment: compt_prod_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000219' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:06 4i.2.269 16:09:07 4i.2 "00389_oci360_4i.2_269_compartment_comptprodnet.html" 16:09:09 4i.2 "00390_oci360_4i.2_269_compartment_comptprodnet_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:11 4i.2 "Per Day" 16:09:11 Compartment: compt_ss, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000213' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:11 4i.2.270 16:09:11 4i.2 "00391_oci360_4i.2_270_compartment_comptss.html" 16:09:13 4i.2 "00392_oci360_4i.2_270_compartment_comptss_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:14 4i.2 "Per Day" 16:09:14 Compartment: compt_ss_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000214' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:14 4i.2.271 16:09:15 4i.2 "00393_oci360_4i.2_271_compartment_comptssnet.html" 16:09:17 4i.2 "00394_oci360_4i.2_271_compartment_comptssnet_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:19 4i.2 "Per Day" 16:09:19 Compartment: compt_test, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000215' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:19 4i.2.272 16:09:20 4i.2 "00395_oci360_4i.2_272_compartment_compttest.html" 16:09:24 4i.2 "00396_oci360_4i.2_272_compartment_compttest_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:27 4i.2 "Per Day" 16:09:27 Compartment: compt_test_app, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000212' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:27 4i.2.273 16:09:28 4i.2 "00397_oci360_4i.2_273_compartment_compttestapp.html" 16:09:29 4i.2 "00398_oci360_4i.2_273_compartment_compttestapp_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:30 4i.2 "Per Day" 16:09:30 Compartment: compt_test_db, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000223' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:30 4i.2.274 16:09:31 4i.2 "00399_oci360_4i.2_274_compartment_compttestdb.html" 16:09:33 4i.2 "00400_oci360_4i.2_274_compartment_compttestdb_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:34 4i.2 "Per Day" 16:09:34 Compartment: compt_test_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000222' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:34 4i.2.275 16:09:34 4i.2 "00401_oci360_4i.2_275_compartment_compttestnet.html" 16:09:36 4i.2 "00402_oci360_4i.2_275_compartment_compttestnet_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:37 4i.2 "Per Day" 16:09:37 Compartment: dbarj, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.tenancy.oc1..000000000000000000000000000000000000000000000000000000000686' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:37 4i.2.276 16:09:38 4i.2 "00403_oci360_4i.2_276_compartment_dbarj.html" 16:09:40 4i.2 "00404_oci360_4i.2_276_compartment_dbarj_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:42 4i.2 "Per Day" 16:09:42 Compartment: enkitec_br, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000211' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:42 4i.2.277 16:09:43 4i.2 "00405_oci360_4i.2_277_compartment_enkitecbr.html" 16:09:47 4i.2 "00406_oci360_4i.2_277_compartment_enkitecbr_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:53 4i.2 "Per Day" 16:09:53 All Compartments - Total Costs 16:09:53 4i.2.278 16:09:55 4i.2 "00407_oci360_4i.2_278_all_compartments_total_costs.html" 21 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:09:59 4i.2 "Per Day" 16:09:59 Service: BLOCK_STORAGE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'BLOCK_STORAGE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:09:59 4i.2.279 16:10:00 4i.2 "00408_oci360_4i.2_279_service_blockstorage.html" 16:10:03 4i.2 "00409_oci360_4i.2_279_service_blockstorage_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:05 4i.2 "Per Day" 16:10:05 Service: COMPUTE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'COMPUTE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:10:05 4i.2.280 16:10:05 4i.2 "00410_oci360_4i.2_280_service_compute.html" 16:10:07 4i.2 "00411_oci360_4i.2_280_service_compute_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:09 4i.2 "Per Day" 16:10:09 Service: DATABASE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'DATABASE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:10:09 4i.2.281 16:10:10 4i.2 "00412_oci360_4i.2_281_service_database.html" 16:10:13 4i.2 "00413_oci360_4i.2_281_service_database_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:16 4i.2 "Per Day" 16:10:16 Service: OBJECTSTORE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'OBJECTSTORE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:10:16 4i.2.282 16:10:18 4i.2 "00414_oci360_4i.2_282_service_objectstore.html" 16:10:20 4i.2 "00415_oci360_4i.2_282_service_objectstore_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:20 4i.2 "Per Day" 16:10:20 All Services - Total Costs 16:10:20 4i.2.283 16:10:21 4i.2 "00416_oci360_4i.2_283_all_services_total_costs.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:21 4i.2 "Per Day" 16:10:21 Product: B88322 - Block Volume, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B88322' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:10:21 4i.2.284 16:10:22 4i.2 "00417_oci360_4i.2_284_product_b88322_block_volume.html" 16:10:24 4i.2 "00418_oci360_4i.2_284_product_b88322_block_volume_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:25 4i.2 "Per Day" 16:10:25 Product: B91962 - Block Volume - Performance Units, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B91962' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:10:25 4i.2.285 16:10:26 4i.2 "00419_oci360_4i.2_285_product_b91962_block_volume_performance_units.html" 16:10:27 4i.2 "00420_oci360_4i.2_285_product_b91962_block_volume_performance_units_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:28 4i.2 "Per Day" 16:10:28 Product: B91961 - Block Volume - Storage, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B91961' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:10:28 4i.2.286 16:10:29 4i.2 "00421_oci360_4i.2_286_product_b91961_block_volume_storage.html" 16:10:31 4i.2 "00422_oci360_4i.2_286_product_b91961_block_volume_storage_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:33 4i.2 "Per Day" 16:10:33 Product: B90570 - Database Cloud Service - Enterprise Edition, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B90570' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:10:33 4i.2.287 16:10:34 4i.2 "00423_oci360_4i.2_287_product_b90570_database_cloud_service_enterprise_edition.html" 16:10:37 4i.2 "00424_oci360_4i.2_287_product_b90570_database_cloud_service_enterprise_edition_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:45 4i.2 "Per Day" 16:10:45 Product: B91627 - Object Storage - Requests, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B91627' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:10:45 4i.2.288 16:10:47 4i.2 "00425_oci360_4i.2_288_product_b91627_object_storage_requests.html" 16:10:50 4i.2 "00426_oci360_4i.2_288_product_b91627_object_storage_requests_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:51 4i.2 "Per Day" 16:10:51 Product: B90425 - Standard Instance - E2, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B90425' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:10:51 4i.2.289 16:10:52 4i.2 "00427_oci360_4i.2_289_product_b90425_standard_instance_e2.html" 16:10:54 4i.2 "00428_oci360_4i.2_289_product_b90425_standard_instance_e2_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:56 4i.2 "Per Day" 16:10:56 All Products - Total Costs 16:10:56 4i.2.290 16:10:58 4i.2 "00429_oci360_4i.2_290_all_products_total_costs.html" 6 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:10:59 4i.2 "Per Day" 16:10:59 Resource: ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:10:59 4i.2.291 16:11:00 4i.2 "00430_oci360_4i.2_291_resource_ocid1dbsystemoc1iadabuwcljsnfve5nklwo622u3aehk77wdxrw6bnlg7tp7ekpl6dmhazmopamga.html" 16:11:01 4i.2 "00431_oci360_4i.2_291_resource_ocid1dbsystemoc1iadabuwcljsnfve5nklwo622u3aehk77wdxrw6bnlg7tp7ekpl6dmhazmopamga_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:03 4i.2 "Per Day" 16:11:03 Resource: ocid1.instance.oc1.iad.000000000000000000000000000000000000000000000000000000000571, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.instance.oc1.iad.000000000000000000000000000000000000000000000000000000000571' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:11:03 4i.2.292 16:11:04 4i.2 "00432_oci360_4i.2_292_resource_ocid1instanceoc1iadanuwcljrucm3wzacvhlxlfh4oif5kml4votppgphdson7minggy2ojqj5vra.html" 16:11:06 4i.2 "00433_oci360_4i.2_292_resource_ocid1instanceoc1iadanuwcljrucm3wzacvhlxlfh4oif5kml4votppgphdson7minggy2ojqj5vra_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:10 4i.2 "Per Day" 16:11:10 Resource: ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:11:10 4i.2.293 16:11:11 4i.2 "00434_oci360_4i.2_293_resource_ocid1dbsystemoc1iadabuwcljsin6q6tm34xkv2c4frlcttkvnxc5sijoalvz6setbs2dw26hcxvxq.html" 16:11:16 4i.2 "00435_oci360_4i.2_293_resource_ocid1dbsystemoc1iadabuwcljsin6q6tm34xkv2c4frlcttkvnxc5sijoalvz6setbs2dw26hcxvxq_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:17 4i.2 "Per Day" 16:11:17 Resource: oci360_bucket, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'oci360_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:11:17 4i.2.294 16:11:18 4i.2 "00436_oci360_4i.2_294_resource_oci360bucket.html" 16:11:19 4i.2 "00437_oci360_4i.2_294_resource_oci360bucket_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:21 4i.2 "Per Day" 16:11:21 Resource: pnb_bucket, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'pnb_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:11:21 4i.2.295 16:11:21 4i.2 "00438_oci360_4i.2_295_resource_pnbbucket.html" 16:11:23 4i.2 "00439_oci360_4i.2_295_resource_pnbbucket_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:24 4i.2 "Per Day" 16:11:24 Resource: UnknownBucket, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'UnknownBucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:11:24 4i.2.296 16:11:25 4i.2 "00440_oci360_4i.2_296_resource_unknownbucket.html" 16:11:26 4i.2 "00441_oci360_4i.2_296_resource_unknownbucket_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:28 4i.2 "Per Day" 16:11:28 Resource: oci360, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'oci360' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:11:28 4i.2.297 16:11:29 4i.2 "00442_oci360_4i.2_297_resource_oci360.html" 16:11:33 4i.2 "00443_oci360_4i.2_297_resource_oci360_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:41 4i.2 "Per Day" 16:11:41 Resource: ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000202, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000202' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:11:41 4i.2.298 16:11:43 4i.2 "00444_oci360_4i.2_298_resource_ocid1bootvolumeoc1iadabuwcljrinmeiygmp5bbfo6sl4cd5falo6asxnvf42tearaebge3lhwybpzq.html" 16:11:45 4i.2 "00445_oci360_4i.2_298_resource_ocid1bootvolumeoc1iadabuwcljrinmeiygmp5bbfo6sl4cd5falo6asxnvf42tearaebge3lhwybpzq_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:47 4i.2 "Per Day" 16:11:47 Resource: ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000203, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000203' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:11:47 4i.2.299 16:11:48 4i.2 "00446_oci360_4i.2_299_resource_ocid1bootvolumeoc1iadabuwcljtev5suqzkrj2f6h3bzbb7dnmmrlmgwkb7322fapxi3n5k5yoscrpq.html" 16:11:49 4i.2 "00447_oci360_4i.2_299_resource_ocid1bootvolumeoc1iadabuwcljtev5suqzkrj2f6h3bzbb7dnmmrlmgwkb7322fapxi3n5k5yoscrpq_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:51 4i.2 "Per Day" 16:11:51 Resource: ocid1.volume.oc1.iad.000000000000000000000000000000000000000000000000000000000709, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.volume.oc1.iad.000000000000000000000000000000000000000000000000000000000709' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:11:51 4i.2.300 16:11:51 4i.2 "00448_oci360_4i.2_300_resource_ocid1volumeoc1iadabuwcljskijtqhd5pwtnb7p2yttay45jblkv5lhrxd3tqeoztdcerorfcawa.html" 16:11:53 4i.2 "00449_oci360_4i.2_300_resource_ocid1volumeoc1iadabuwcljskijtqhd5pwtnb7p2yttay45jblkv5lhrxd3tqeoztdcerorfcawa_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:55 4i.2 "Per Day" 16:11:55 All Resources - Total Costs 16:11:55 4i.2.301 16:11:57 4i.2 "00450_oci360_4i.2_301_all_resources_total_costs.html" 10 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:11:59 4i.2 "Per Day" 16:11:59 Tag "tags/Oracle-Tags.CreatedBy" Top 15, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "tags/Oracle-Tags.CreatedBy" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "tags/Oracle-Tags.CreatedBy" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'oracleidentitycloudservice/user4@acme.com',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'user4@acme.com',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate order by seq 16:11:59 4i.2.302 16:12:00 4i.2 "00451_oci360_4i.2_302_tag_tagsoracletagscreatedby_top_15.html" 16:12:05 4i.2 "00452_oci360_4i.2_302_tag_tagsoracletagscreatedby_top_15_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:12:08 4i.2 "Per Day" 16:12:08 Tag "tags/Oracle-Tags.CreatedOn" Top 15, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "tags/Oracle-Tags.CreatedOn" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "tags/Oracle-Tags.CreatedOn" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-29T21:12:11.743Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-29T15:30:44.648Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-29T14:43:41.712Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-20T14:04:10.722Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-06-12T14:25:37.187Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-29T14:22:09.134Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'2020-05-14T21:14:55.372Z',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate order by seq 16:12:08 4i.2.303 16:12:08 4i.2 "00453_oci360_4i.2_303_tag_tagsoracletagscreatedon_top_15.html" 16:12:10 4i.2 "00454_oci360_4i.2_303_tag_tagsoracletagscreatedon_top_15_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:12:12 4i.2 "Per Day" 16:12:12 Tag "tags/orcl-cloud.free-tier-retained" Top 15, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "tags/orcl-cloud.free-tier-retained" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "tags/orcl-cloud.free-tier-retained" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate order by seq 16:12:12 4i.2.304 16:12:12 4i.2 "00455_oci360_4i.2_304_tag_tagsorclcloudfreetierretained_top_15.html" 16:12:14 4i.2 "00456_oci360_4i.2_304_tag_tagsorclcloudfreetierretained_top_15_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:12:15 4i.2 "Per Day" 16:12:15 Tags - Total Costs 16:12:15 4i.2.305 16:12:16 4i.2 "00457_oci360_4i.2_305_tags_total_costs.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:12:19 4i.2 "Per Day" 16:12:19 Top Compartments - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "product/compartmentId" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "product/compartmentId" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000229',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000210',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.tenancy.oc1..000000000000000000000000000000000000000000000000000000000686',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000211',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000212',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000213',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000214',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000215',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000216',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000217',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000218',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000219',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000220',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000221',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000222',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate order by seq 16:12:19 4i.2.306 16:12:21 4i.2 "00458_oci360_4i.2_306_top_compartments_total_costs.html" 16:12:23 4i.2 "00459_oci360_4i.2_306_top_compartments_total_costs_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:12:25 4i.2 "Per Day" 16:12:25 Top Services - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "product/service" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "product/service" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'DATABASE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'COMPUTE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'BLOCK_STORAGE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'OBJECTSTORE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate order by seq 16:12:25 4i.2.307 16:12:27 4i.2 "00460_oci360_4i.2_307_top_services_total_costs.html" 16:12:30 4i.2 "00461_oci360_4i.2_307_top_services_total_costs_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:12:38 4i.2 "Per Day" 16:12:38 Top Products - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "cost/productSku" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "cost/productSku" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B90570',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B88322',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B90425',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91961',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91627',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'B91962',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate order by seq 16:12:38 4i.2.308 16:12:38 4i.2 "00462_oci360_4i.2_308_top_products_total_costs.html" 16:12:39 4i.2 "00463_oci360_4i.2_308_top_products_total_costs_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:12:41 4i.2 "Per Day" 16:12:41 Top Resources - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "product/resourceId" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "product/resourceId" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.instance.oc1.iad.000000000000000000000000000000000000000000000000000000000571',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000202',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'oci360_bucket',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'pnb_bucket',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000203',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'ocid1.volume.oc1.iad.000000000000000000000000000000000000000000000000000000000709',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'UnknownBucket',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'oci360',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate order by seq 16:12:41 4i.2.309 16:12:42 4i.2 "00464_oci360_4i.2_309_top_resources_total_costs.html" 16:12:44 4i.2 "00465_oci360_4i.2_309_top_resources_total_costs_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:12:46 4i.2 "Per Day" 16:12:46 Top Regions - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "product/region" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "product/region" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'us-ashburn-1',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate order by seq 16:12:46 4i.2.310 16:12:47 4i.2 "00466_oci360_4i.2_310_top_regions_total_costs.html" 16:12:48 4i.2 "00467_oci360_4i.2_310_top_regions_total_costs_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:12:52 4i.2 "Per Day" 16:12:52 Top ADs - Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC, "product/availabilityDomain" ITEM_ID FROM OCI360_REPORTS_COST /* WHERE */ GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"'), "product/availabilityDomain" ), trange as ( select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'CYtq:US-ASHBURN-AD-1',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'CYtq:US-ASHBURN-AD-2',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'CYtq:US-ASHBURN-AD-3',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(ITEM_ID,'',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate order by seq 16:12:52 4i.2.311 16:12:53 4i.2 "00468_oci360_4i.2_311_top_ads_total_costs.html" 16:12:56 4i.2 "00469_oci360_4i.2_311_top_ads_total_costs_line_chart.html" 40 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:12:59 4i.3 "Per Month" 16:12:59 Total Costs, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE 1 = 1 GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:12:59 4i.3.312 16:13:00 4i.3 "00470_oci360_4i.3_312_total_costs.html" 16:13:02 4i.3 "00471_oci360_4i.3_312_total_costs_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:04 4i.3 "Per Month" 16:13:04 Compartment: A, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000220' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:04 4i.3.313 16:13:04 4i.3 "00472_oci360_4i.3_313_compartment_a.html" 16:13:05 4i.3 "00473_oci360_4i.3_313_compartment_a_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:06 4i.3 "Per Month" 16:13:06 Compartment: Dev, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000225' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:06 4i.3.314 16:13:07 4i.3 "00474_oci360_4i.3_314_compartment_dev.html" 16:13:08 4i.3 "00475_oci360_4i.3_314_compartment_dev_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:10 4i.3 "Per Month" 16:13:10 Compartment: ManagedCompartmentForPaaS, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000228' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:10 4i.3.315 16:13:10 4i.3 "00476_oci360_4i.3_315_compartment_managedcompartmentforpaas.html" 16:13:12 4i.3 "00477_oci360_4i.3_315_compartment_managedcompartmentforpaas_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:15 4i.3 "Per Month" 16:13:15 Compartment: Ops, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000217' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:15 4i.3.316 16:13:16 4i.3 "00478_oci360_4i.3_316_compartment_ops.html" 16:13:19 4i.3 "00479_oci360_4i.3_316_compartment_ops_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:23 4i.3 "Per Month" 16:13:23 Compartment: Test, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000227' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:23 4i.3.317 16:13:26 4i.3 "00480_oci360_4i.3_317_compartment_test.html" 16:13:30 4i.3 "00481_oci360_4i.3_317_compartment_test_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:34 4i.3 "Per Month" 16:13:34 Compartment: compt_dev, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000216' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:34 4i.3.318 16:13:34 4i.3 "00482_oci360_4i.3_318_compartment_comptdev.html" 16:13:37 4i.3 "00483_oci360_4i.3_318_compartment_comptdev_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:39 4i.3 "Per Month" 16:13:39 Compartment: compt_dev_app, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000210' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:39 4i.3.319 16:13:40 4i.3 "00484_oci360_4i.3_319_compartment_comptdevapp.html" 16:13:41 4i.3 "00485_oci360_4i.3_319_compartment_comptdevapp_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:43 4i.3 "Per Month" 16:13:43 Compartment: compt_dev_db, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000229' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:43 4i.3.320 16:13:43 4i.3 "00486_oci360_4i.3_320_compartment_comptdevdb.html" 16:13:45 4i.3 "00487_oci360_4i.3_320_compartment_comptdevdb_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:46 4i.3 "Per Month" 16:13:46 Compartment: compt_dev_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000226' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:46 4i.3.321 16:13:47 4i.3 "00488_oci360_4i.3_321_compartment_comptdevnet.html" 16:13:49 4i.3 "00489_oci360_4i.3_321_compartment_comptdevnet_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:52 4i.3 "Per Month" 16:13:52 Compartment: compt_prod, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000218' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:52 4i.3.322 16:13:53 4i.3 "00490_oci360_4i.3_322_compartment_comptprod.html" 16:13:56 4i.3 "00491_oci360_4i.3_322_compartment_comptprod_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:13:58 4i.3 "Per Month" 16:13:58 Compartment: compt_prod_app, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000224' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:13:58 4i.3.323 16:13:58 4i.3 "00492_oci360_4i.3_323_compartment_comptprodapp.html" 16:13:59 4i.3 "00493_oci360_4i.3_323_compartment_comptprodapp_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:01 4i.3 "Per Month" 16:14:01 Compartment: compt_prod_db, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000221' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:14:01 4i.3.324 16:14:01 4i.3 "00494_oci360_4i.3_324_compartment_comptproddb.html" 16:14:03 4i.3 "00495_oci360_4i.3_324_compartment_comptproddb_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:04 4i.3 "Per Month" 16:14:04 Compartment: compt_prod_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000219' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:14:04 4i.3.325 16:14:05 4i.3 "00496_oci360_4i.3_325_compartment_comptprodnet.html" 16:14:06 4i.3 "00497_oci360_4i.3_325_compartment_comptprodnet_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:08 4i.3 "Per Month" 16:14:08 Compartment: compt_ss, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000213' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:14:08 4i.3.326 16:14:08 4i.3 "00498_oci360_4i.3_326_compartment_comptss.html" 16:14:10 4i.3 "00499_oci360_4i.3_326_compartment_comptss_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:12 4i.3 "Per Month" 16:14:12 Compartment: compt_ss_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000214' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:14:12 4i.3.327 16:14:12 4i.3 "00500_oci360_4i.3_327_compartment_comptssnet.html" 16:14:16 4i.3 "00501_oci360_4i.3_327_compartment_comptssnet_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:21 4i.3 "Per Month" 16:14:21 Compartment: compt_test, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000215' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:14:21 4i.3.328 16:14:23 4i.3 "00502_oci360_4i.3_328_compartment_compttest.html" 16:14:25 4i.3 "00503_oci360_4i.3_328_compartment_compttest_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:27 4i.3 "Per Month" 16:14:27 Compartment: compt_test_app, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000212' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:14:27 4i.3.329 16:14:28 4i.3 "00504_oci360_4i.3_329_compartment_compttestapp.html" 16:14:30 4i.3 "00505_oci360_4i.3_329_compartment_compttestapp_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:35 4i.3 "Per Month" 16:14:35 Compartment: compt_test_db, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000223' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:14:35 4i.3.330 16:14:38 4i.3 "00506_oci360_4i.3_330_compartment_compttestdb.html" 16:14:40 4i.3 "00507_oci360_4i.3_330_compartment_compttestdb_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:43 4i.3 "Per Month" 16:14:43 Compartment: compt_test_net, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000222' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:14:43 4i.3.331 16:14:44 4i.3 "00508_oci360_4i.3_331_compartment_compttestnet.html" 16:14:47 4i.3 "00509_oci360_4i.3_331_compartment_compttestnet_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:50 4i.3 "Per Month" 16:14:50 Compartment: dbarj, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.tenancy.oc1..000000000000000000000000000000000000000000000000000000000686' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:14:50 4i.3.332 16:14:50 4i.3 "00510_oci360_4i.3_332_compartment_dbarj.html" 16:14:52 4i.3 "00511_oci360_4i.3_332_compartment_dbarj_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:54 4i.3 "Per Month" 16:14:54 Compartment: enkitec_br, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/compartmentId" = 'ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000211' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:14:54 4i.3.333 16:14:54 4i.3 "00512_oci360_4i.3_333_compartment_enkitecbr.html" 16:14:56 4i.3 "00513_oci360_4i.3_333_compartment_enkitecbr_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:14:57 4i.3 "Per Month" 16:14:57 All Compartments - Total Costs 16:14:57 4i.3.334 16:14:58 4i.3 "00514_oci360_4i.3_334_all_compartments_total_costs.html" 21 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:15:03 4i.3 "Per Month" 16:15:03 Service: BLOCK_STORAGE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'BLOCK_STORAGE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:15:03 4i.3.335 16:15:04 4i.3 "00515_oci360_4i.3_335_service_blockstorage.html" 16:15:08 4i.3 "00516_oci360_4i.3_335_service_blockstorage_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:15:11 4i.3 "Per Month" 16:15:11 Service: COMPUTE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'COMPUTE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:15:11 4i.3.336 16:15:13 4i.3 "00517_oci360_4i.3_336_service_compute.html" 16:15:16 4i.3 "00518_oci360_4i.3_336_service_compute_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:15:17 4i.3 "Per Month" 16:15:17 Service: DATABASE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'DATABASE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:15:17 4i.3.337 16:15:18 4i.3 "00519_oci360_4i.3_337_service_database.html" 16:15:20 4i.3 "00520_oci360_4i.3_337_service_database_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:15:23 4i.3 "Per Month" 16:15:23 Service: OBJECTSTORE, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/service" = 'OBJECTSTORE' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:15:23 4i.3.338 16:15:24 4i.3 "00521_oci360_4i.3_338_service_objectstore.html" 16:15:29 4i.3 "00522_oci360_4i.3_338_service_objectstore_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:15:32 4i.3 "Per Month" 16:15:32 All Services - Total Costs 16:15:32 4i.3.339 16:15:33 4i.3 "00523_oci360_4i.3_339_all_services_total_costs.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:15:36 4i.3 "Per Month" 16:15:36 Product: B88322 - Block Volume, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B88322' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:15:36 4i.3.340 16:15:38 4i.3 "00524_oci360_4i.3_340_product_b88322_block_volume.html" 16:15:42 4i.3 "00525_oci360_4i.3_340_product_b88322_block_volume_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:15:43 4i.3 "Per Month" 16:15:43 Product: B91962 - Block Volume - Performance Units, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B91962' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:15:43 4i.3.341 16:15:43 4i.3 "00526_oci360_4i.3_341_product_b91962_block_volume_performance_units.html" 16:15:46 4i.3 "00527_oci360_4i.3_341_product_b91962_block_volume_performance_units_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:15:47 4i.3 "Per Month" 16:15:47 Product: B91961 - Block Volume - Storage, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B91961' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:15:47 4i.3.342 16:15:47 4i.3 "00528_oci360_4i.3_342_product_b91961_block_volume_storage.html" 16:15:49 4i.3 "00529_oci360_4i.3_342_product_b91961_block_volume_storage_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:15:50 4i.3 "Per Month" 16:15:50 Product: B90570 - Database Cloud Service - Enterprise Edition, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B90570' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:15:50 4i.3.343 16:15:51 4i.3 "00530_oci360_4i.3_343_product_b90570_database_cloud_service_enterprise_edition.html" 16:15:53 4i.3 "00531_oci360_4i.3_343_product_b90570_database_cloud_service_enterprise_edition_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:15:55 4i.3 "Per Month" 16:15:55 Product: B91627 - Object Storage - Requests, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B91627' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:15:55 4i.3.344 16:15:55 4i.3 "00532_oci360_4i.3_344_product_b91627_object_storage_requests.html" 16:15:58 4i.3 "00533_oci360_4i.3_344_product_b91627_object_storage_requests_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:16:02 4i.3 "Per Month" 16:16:02 Product: B90425 - Standard Instance - E2, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "cost/productSku" = 'B90425' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:16:02 4i.3.345 16:16:04 4i.3 "00534_oci360_4i.3_345_product_b90425_standard_instance_e2.html" 16:16:08 4i.3 "00535_oci360_4i.3_345_product_b90425_standard_instance_e2_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:16:11 4i.3 "Per Month" 16:16:11 All Products - Total Costs 16:16:11 4i.3.346 16:16:13 4i.3 "00536_oci360_4i.3_346_all_products_total_costs.html" 6 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:16:20 4i.3 "Per Month" 16:16:20 Resource: ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000232' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:16:20 4i.3.347 16:16:22 4i.3 "00537_oci360_4i.3_347_resource_ocid1dbsystemoc1iadabuwcljsnfve5nklwo622u3aehk77wdxrw6bnlg7tp7ekpl6dmhazmopamga.html" 16:16:24 4i.3 "00538_oci360_4i.3_347_resource_ocid1dbsystemoc1iadabuwcljsnfve5nklwo622u3aehk77wdxrw6bnlg7tp7ekpl6dmhazmopamga_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:16:26 4i.3 "Per Month" 16:16:26 Resource: ocid1.instance.oc1.iad.000000000000000000000000000000000000000000000000000000000571, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.instance.oc1.iad.000000000000000000000000000000000000000000000000000000000571' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:16:26 4i.3.348 16:16:28 4i.3 "00539_oci360_4i.3_348_resource_ocid1instanceoc1iadanuwcljrucm3wzacvhlxlfh4oif5kml4votppgphdson7minggy2ojqj5vra.html" 16:16:31 4i.3 "00540_oci360_4i.3_348_resource_ocid1instanceoc1iadanuwcljrucm3wzacvhlxlfh4oif5kml4votppgphdson7minggy2ojqj5vra_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:16:35 4i.3 "Per Month" 16:16:35 Resource: ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.dbsystem.oc1.iad.000000000000000000000000000000000000000000000000000000000231' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:16:35 4i.3.349 16:16:36 4i.3 "00541_oci360_4i.3_349_resource_ocid1dbsystemoc1iadabuwcljsin6q6tm34xkv2c4frlcttkvnxc5sijoalvz6setbs2dw26hcxvxq.html" 16:16:38 4i.3 "00542_oci360_4i.3_349_resource_ocid1dbsystemoc1iadabuwcljsin6q6tm34xkv2c4frlcttkvnxc5sijoalvz6setbs2dw26hcxvxq_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:16:39 4i.3 "Per Month" 16:16:39 Resource: oci360_bucket, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'oci360_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:16:39 4i.3.350 16:16:40 4i.3 "00543_oci360_4i.3_350_resource_oci360bucket.html" 16:16:41 4i.3 "00544_oci360_4i.3_350_resource_oci360bucket_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:16:42 4i.3 "Per Month" 16:16:42 Resource: pnb_bucket, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'pnb_bucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:16:42 4i.3.351 16:16:43 4i.3 "00545_oci360_4i.3_351_resource_pnbbucket.html" 16:16:45 4i.3 "00546_oci360_4i.3_351_resource_pnbbucket_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:16:47 4i.3 "Per Month" 16:16:47 Resource: UnknownBucket, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'UnknownBucket' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:16:47 4i.3.352 16:16:48 4i.3 "00547_oci360_4i.3_352_resource_unknownbucket.html" 16:16:49 4i.3 "00548_oci360_4i.3_352_resource_unknownbucket_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:16:53 4i.3 "Per Month" 16:16:53 Resource: oci360, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'oci360' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:16:53 4i.3.353 16:16:54 4i.3 "00549_oci360_4i.3_353_resource_oci360.html" 16:16:57 4i.3 "00550_oci360_4i.3_353_resource_oci360_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:00 4i.3 "Per Month" 16:17:00 Resource: ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000202, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000202' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:17:00 4i.3.354 16:17:01 4i.3 "00551_oci360_4i.3_354_resource_ocid1bootvolumeoc1iadabuwcljrinmeiygmp5bbfo6sl4cd5falo6asxnvf42tearaebge3lhwybpzq.html" 16:17:03 4i.3 "00552_oci360_4i.3_354_resource_ocid1bootvolumeoc1iadabuwcljrinmeiygmp5bbfo6sl4cd5falo6asxnvf42tearaebge3lhwybpzq_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:06 4i.3 "Per Month" 16:17:06 Resource: ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000203, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.bootvolume.oc1.iad.000000000000000000000000000000000000000000000000000000000203' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:17:06 4i.3.355 16:17:06 4i.3 "00553_oci360_4i.3_355_resource_ocid1bootvolumeoc1iadabuwcljtev5suqzkrj2f6h3bzbb7dnmmrlmgwkb7322fapxi3n5k5yoscrpq.html" 16:17:09 4i.3 "00554_oci360_4i.3_355_resource_ocid1bootvolumeoc1iadabuwcljtev5suqzkrj2f6h3bzbb7dnmmrlmgwkb7322fapxi3n5k5yoscrpq_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:13 4i.3 "Per Month" 16:17:13 Resource: ocid1.volume.oc1.iad.000000000000000000000000000000000000000000000000000000000709, between 2020-05-11 and 2020-06-20 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM("cost/myCost") COMPUTEDAMOUNT, TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ENDTIMEUTC FROM OCI360_REPORTS_COST WHERE "product/resourceId" = 'ocid1.volume.oc1.iad.000000000000000000000000000000000000000000000000000000000709' GROUP BY TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') min, trunc(max(TO_TIMESTAMP("lineItem/intervalUsageEnd",'YYYY-MM-DD"T"HH24:MI"Z"')),'HH24') max FROM OCI360_REPORTS_COST ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM-1)) STARTDATE, TO_TIMESTAMP(add_months(trunc(trange.min,'mm'),ROWNUM)) - numToDSInterval( 1, 'second' ) ENDDATE, ROWNUM seq FROM trange CONNECT BY LEVEL <= ceil(months_between(trange.max,trange.min)) + 1 ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON >= 0 CONNECT BY LEVEL <= NUMMON + 3 ), tcycle AS ( SELECT STARTDATE, ENDDATE, SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE, RANK() OVER (ORDER BY ENDDATE ASC) + LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:17:13 4i.3.356 16:17:16 4i.3 "00555_oci360_4i.3_356_resource_ocid1volumeoc1iadabuwcljskijtqhd5pwtnb7p2yttay45jblkv5lhrxd3tqeoztdcerorfcawa.html" 16:17:20 4i.3 "00556_oci360_4i.3_356_resource_ocid1volumeoc1iadabuwcljskijtqhd5pwtnb7p2yttay45jblkv5lhrxd3tqeoztdcerorfcawa_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:24 4i.3 "Per Month" 16:17:24 All Resources - Total Costs 16:17:24 4i.3.357 16:17:26 4i.3 "00557_oci360_4i.3_357_all_resources_total_costs.html" 10 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:32 5a "Identity and Access Management" 16:17:32 Users SELECT t1.* FROM OCI360_USERS t1 16:17:32 5a.358 16:17:32 5a "00558_oci360_5a_358_users.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:35 5a "Identity and Access Management" 16:17:35 User Groups SELECT T2.NAME USER_NAME, T2.DESCRIPTION USER_DESCRIPTION, T1.NAME GROUP_NAME, T1.DESCRIPTION GROUP_DESCRIPTION, T2.ID USER_ID, T1.ID GROUP_ID FROM OCI360_USER_GROUPS t1, OCI360_USERS t2 WHERE t1.user_id=t2.id 16:17:35 5a.359 16:17:36 5a "00559_oci360_5a_359_user_groups.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:37 5a "Identity and Access Management" 16:17:37 Groups SELECT t1.* FROM OCI360_GROUPS t1 16:17:37 5a.360 16:17:38 5a "00560_oci360_5a_360_groups.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:40 5a "Identity and Access Management" 16:17:40 Dynamic Groups SELECT t1.* FROM OCI360_DYN_GROUPS t1 16:17:40 5a.361 16:17:40 5a "00561_oci360_5a_361_dynamic_groups.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:43 5a "Identity and Access Management" 16:17:43 Policies SELECT distinct ID, NAME, DESCRIPTION, TIME_CREATED, VERSION_DATE, COMPARTMENT_ID, INACTIVE_STATUS, LIFECYCLE_STATE FROM OCI360_POLICIES t1 16:17:43 5a.362 16:17:44 5a "00562_oci360_5a_362_policies.html" 7 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:46 5a "Identity and Access Management" 16:17:46 Policy Statements SELECT ID, NAME, STATEMENTS FROM OCI360_POLICIES t1 16:17:46 5a.363 16:17:47 5a "00563_oci360_5a_363_policy_statements.html" 25 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:52 5a "Identity and Access Management" 16:17:52 Users Auth Tokes SELECT t1.* FROM OCI360_AUTH_TOKEN t1 16:17:52 5a.364 16:17:54 5a "00564_oci360_5a_364_users_auth_tokes.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:17:59 5a "Identity and Access Management" 16:17:59 Users SMTP Credentials SELECT t1.* FROM OCI360_SMTP_CREDENTIALS t1 16:17:59 5a.365 16:18:00 5a "00565_oci360_5a_365_users_smtp_credentials.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:01 5a "Identity and Access Management" 16:18:01 Users Secret Keys SELECT t1.* FROM OCI360_CUSTOMER_KEY t1 16:18:01 5a.366 16:18:03 5a "00566_oci360_5a_366_users_secret_keys.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:06 5a "Identity and Access Management" 16:18:06 All Regions SELECT t1.* FROM OCI360_REGIONS t1 16:18:06 5a.367 16:18:06 5a "00567_oci360_5a_367_all_regions.html" 18 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:08 5a "Identity and Access Management" 16:18:08 Tags SELECT t1.* FROM OCI360_TAGS t1 16:18:08 5a.368 16:18:09 5a "00568_oci360_5a_368_tags.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:11 5a "Identity and Access Management" 16:18:11 Tag Namespaces SELECT t1.* FROM OCI360_TAG_NAMESPACES t1 16:18:11 5a.369 16:18:12 5a "00569_oci360_5a_369_tag_namespaces.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:14 5a "Identity and Access Management" 16:18:14 Work Requests SELECT t1.* FROM OCI360_IAM_WORKREQS t1 16:18:14 5a.370 16:18:15 5a "00570_oci360_5a_370_work_requests.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:20 5b "Key Management Service" 16:18:20 Vaults SELECT t1.* FROM OCI360_VAULTS t1 16:18:20 5b.371 16:18:21 5b "00571_oci360_5b_371_vaults.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:25 5b "Key Management Service" 16:18:25 Keys SELECT t1.* FROM OCI360_KEYS t1 16:18:25 5b.372 16:18:27 5b "00572_oci360_5b_372_keys.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:28 5b "Key Management Service" 16:18:28 Key Versions SELECT t1.* FROM OCI360_KEY_VERSIONS t1 16:18:28 5b.373 16:18:29 5b "00573_oci360_5b_373_key_versions.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:31 5b "Key Management Service" 16:18:31 Boot-Volume Keys SELECT t1.* FROM OCI360_BV_KEYS t1 16:18:31 5b.374 16:18:32 5b "00574_oci360_5b_374_bootvolume_keys.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:34 5b "Key Management Service" 16:18:34 Volume Keys SELECT t1.* FROM OCI360_VOL_KEYS t1 16:18:34 5b.375 16:18:34 5b "00575_oci360_5b_375_volume_keys.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:18:37 5c "Audit" 16:18:37 Audit Events - Last 1000 lines SELECT t1.* FROM OCI360_AUDIT_EVENTS t1 WHERE t1.DATA$REQUEST$ACTION not in ('GET','HEAD') ORDER BY EVENT_TIME DESC FETCH NEXT 1000 ROWS ONLY 16:18:37 5c.376 16:18:37 5c "00576_oci360_5c_376_audit_events_last_1000_lines.html" 1000 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:21:55 5c "Audit" 16:21:55 Audit Events - 100 random lines SELECT t1.* FROM OCI360_AUDIT_EVENTS SAMPLE (0.1) t1 FETCH NEXT 100 ROWS ONLY 16:21:55 5c.377 16:21:56 5c "00577_oci360_5c_377_audit_events_100_random_lines.html" 100 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:22:13 5c "Audit" 16:22:13 Request Events per User SELECT DATA$EVENT_NAME, SOURCE, EVENT_TYPE, DATA$IDENTITY$PRINCIPAL_NAME, REGEXP_REPLACE(DATA$IDENTITY$PRINCIPAL_ID,'ocid1.instance.oc1.*','ocid1.000000000000000000000000000000000000000000000000000000000570.oc1.*') DATA$IDENTITY$PRINCIPAL_ID, REGEXP_REPLACE(DATA$IDENTITY$IP_ADDRESS,'172.24.*','172.24.*') DATA$IDENTITY$IP_ADDRESS, DATA$REQUEST$ACTION, COUNT(*) FROM OCI360_AUDIT_EVENTS t1 GROUP BY DATA$EVENT_NAME, SOURCE, EVENT_TYPE, DATA$IDENTITY$PRINCIPAL_NAME, REGEXP_REPLACE(DATA$IDENTITY$PRINCIPAL_ID,'ocid1.instance.oc1.*','ocid1.000000000000000000000000000000000000000000000000000000000570.oc1.*'), REGEXP_REPLACE(DATA$IDENTITY$IP_ADDRESS,'172.24.*','172.24.*'), DATA$REQUEST$ACTION 16:22:13 5c.378 16:22:14 5c "00578_oci360_5c_378_request_events_per_user.html" 61 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:22:24 5c "Audit" 16:22:24 Compute Actions select DISTINCT DATA$EVENT_NAME, cast(TO_TIMESTAMP_TZ(EVENT_TIME,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) EVENT_TIME, EVENT_TYPE, SOURCE, /* CREDENTIAL_ID, */ DATA$IDENTITY$TENANT_ID, DATA$IDENTITY$PRINCIPAL_NAME, DATA$IDENTITY$PRINCIPAL_ID, DATA$IDENTITY$USER_AGENT, DATA$IDENTITY$IP_ADDRESS, DATA$RESPONSE$RESPONSE_TIME, DATA$COMPARTMENT_ID, DATA$COMPARTMENT_NAME, DATA$REQUEST$ACTION, DATA$RESPONSE$STATUS, DATA$RESOURCE_NAME, DATA$RESOURCE_ID /* NVL("response_payload$id","response_payload$id") response_payload$id, */ /* NVL("response_payload$ResourceName","response_payload$resourceName") response_payload$resourceName */ FROM OCI360_AUDIT_EVENTS WHERE SOURCE='ComputeApi' AND DATA$REQUEST$ACTION not in ('GET','HEAD') ORDER BY EVENT_TIME DESC 16:22:24 5c.379 16:22:24 5c "00579_oci360_5c_379_compute_actions.html" 6 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:22:25 5c "Audit" 16:22:25 Block Volume Actions select DISTINCT DATA$EVENT_NAME, cast(TO_TIMESTAMP_TZ(EVENT_TIME,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) EVENT_TIME, EVENT_TYPE, SOURCE, /* CREDENTIAL_ID, */ DATA$IDENTITY$TENANT_ID, DATA$IDENTITY$PRINCIPAL_NAME, DATA$IDENTITY$PRINCIPAL_ID, DATA$IDENTITY$USER_AGENT, DATA$IDENTITY$IP_ADDRESS, DATA$RESPONSE$RESPONSE_TIME, DATA$COMPARTMENT_ID, DATA$COMPARTMENT_NAME, DATA$REQUEST$ACTION, DATA$RESPONSE$STATUS, DATA$RESOURCE_NAME, DATA$RESOURCE_ID /* NVL("response_payload$id","response_payload$id") response_payload$id, */ /* NVL("response_payload$ResourceName","response_payload$resourceName") response_payload$resourceName */ FROM OCI360_AUDIT_EVENTS WHERE SOURCE='BlockVolumes' AND DATA$REQUEST$ACTION not in ('GET','HEAD') ORDER BY EVENT_TIME DESC 16:22:25 5c.380 16:22:26 5c "00580_oci360_5c_380_block_volume_actions.html" 14 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:22:28 5c "Audit" 16:22:28 Object Storage Actions select DISTINCT DATA$EVENT_NAME, cast(TO_TIMESTAMP_TZ(EVENT_TIME,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) EVENT_TIME, EVENT_TYPE, SOURCE, /* CREDENTIAL_ID, */ DATA$IDENTITY$TENANT_ID, DATA$IDENTITY$PRINCIPAL_NAME, DATA$IDENTITY$PRINCIPAL_ID, DATA$IDENTITY$USER_AGENT, DATA$IDENTITY$IP_ADDRESS, DATA$RESPONSE$RESPONSE_TIME, DATA$COMPARTMENT_ID, DATA$COMPARTMENT_NAME, DATA$REQUEST$ACTION, DATA$RESPONSE$STATUS, DATA$RESOURCE_NAME, DATA$RESOURCE_ID /* NVL("response_payload$id","response_payload$id") response_payload$id, */ /* NVL("response_payload$ResourceName","response_payload$resourceName") response_payload$resourceName */ FROM OCI360_AUDIT_EVENTS WHERE SOURCE='ObjectStorage' AND DATA$REQUEST$ACTION not in ('GET','HEAD') ORDER BY EVENT_TIME DESC 16:22:28 5c.381 16:22:29 5c "00581_oci360_5c_381_object_storage_actions.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:22:31 5c "Audit" 16:22:31 File Storage Actions select DISTINCT DATA$EVENT_NAME, cast(TO_TIMESTAMP_TZ(EVENT_TIME,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) EVENT_TIME, EVENT_TYPE, SOURCE, /* CREDENTIAL_ID, */ DATA$IDENTITY$TENANT_ID, DATA$IDENTITY$PRINCIPAL_NAME, DATA$IDENTITY$PRINCIPAL_ID, DATA$IDENTITY$USER_AGENT, DATA$IDENTITY$IP_ADDRESS, DATA$RESPONSE$RESPONSE_TIME, DATA$COMPARTMENT_ID, DATA$COMPARTMENT_NAME, DATA$REQUEST$ACTION, DATA$RESPONSE$STATUS, DATA$RESOURCE_NAME, DATA$RESOURCE_ID /* NVL("response_payload$id","response_payload$id") response_payload$id, */ /* NVL("response_payload$ResourceName","response_payload$resourceName") response_payload$resourceName */ FROM OCI360_AUDIT_EVENTS WHERE SOURCE='FileStorage' AND DATA$REQUEST$ACTION not in ('GET','HEAD') ORDER BY EVENT_TIME DESC 16:22:31 5c.382 16:22:32 5c "00582_oci360_5c_382_file_storage_actions.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:22:35 5c "Audit" 16:22:35 Network Actions select DISTINCT DATA$EVENT_NAME, cast(TO_TIMESTAMP_TZ(EVENT_TIME,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) EVENT_TIME, EVENT_TYPE, SOURCE, /* CREDENTIAL_ID, */ DATA$IDENTITY$TENANT_ID, DATA$IDENTITY$PRINCIPAL_NAME, DATA$IDENTITY$PRINCIPAL_ID, DATA$IDENTITY$USER_AGENT, DATA$IDENTITY$IP_ADDRESS, DATA$RESPONSE$RESPONSE_TIME, DATA$COMPARTMENT_ID, DATA$COMPARTMENT_NAME, DATA$REQUEST$ACTION, DATA$RESPONSE$STATUS, DATA$RESOURCE_NAME, DATA$RESOURCE_ID /* NVL("response_payload$id","response_payload$id") response_payload$id, */ /* NVL("response_payload$ResourceName","response_payload$resourceName") response_payload$resourceName */ FROM OCI360_AUDIT_EVENTS WHERE SOURCE='VirtualCloudNetworksApi' AND DATA$REQUEST$ACTION not in ('GET','HEAD') ORDER BY EVENT_TIME DESC 16:22:35 5c.383 16:22:36 5c "00583_oci360_5c_383_network_actions.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:22:43 5c "Audit" 16:22:43 Database Actions select DISTINCT DATA$EVENT_NAME, cast(TO_TIMESTAMP_TZ(EVENT_TIME,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) EVENT_TIME, EVENT_TYPE, SOURCE, /* CREDENTIAL_ID, */ DATA$IDENTITY$TENANT_ID, DATA$IDENTITY$PRINCIPAL_NAME, DATA$IDENTITY$PRINCIPAL_ID, DATA$IDENTITY$USER_AGENT, DATA$IDENTITY$IP_ADDRESS, DATA$RESPONSE$RESPONSE_TIME, DATA$COMPARTMENT_ID, DATA$COMPARTMENT_NAME, DATA$REQUEST$ACTION, DATA$RESPONSE$STATUS, DATA$RESOURCE_NAME, DATA$RESOURCE_ID /* NVL("response_payload$id","response_payload$id") response_payload$id, */ /* NVL("response_payload$ResourceName","response_payload$resourceName") response_payload$resourceName */ FROM OCI360_AUDIT_EVENTS WHERE SOURCE='DatabaseService' AND DATA$REQUEST$ACTION not in ('GET','HEAD') ORDER BY EVENT_TIME DESC 16:22:43 5c.384 16:22:47 5c "00584_oci360_5c_384_database_actions.html" 9 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:22:54 5c "Audit" 16:22:54 Identity Actions select DISTINCT DATA$EVENT_NAME, cast(TO_TIMESTAMP_TZ(EVENT_TIME,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) EVENT_TIME, EVENT_TYPE, SOURCE, /* CREDENTIAL_ID, */ DATA$IDENTITY$TENANT_ID, DATA$IDENTITY$PRINCIPAL_NAME, DATA$IDENTITY$PRINCIPAL_ID, DATA$IDENTITY$USER_AGENT, DATA$IDENTITY$IP_ADDRESS, DATA$RESPONSE$RESPONSE_TIME, DATA$COMPARTMENT_ID, DATA$COMPARTMENT_NAME, DATA$REQUEST$ACTION, DATA$RESPONSE$STATUS, DATA$RESOURCE_NAME, DATA$RESOURCE_ID /* NVL("response_payload$id","response_payload$id") response_payload$id, */ /* NVL("response_payload$ResourceName","response_payload$resourceName") response_payload$resourceName */ FROM OCI360_AUDIT_EVENTS WHERE SOURCE='IdentityProvisioning' AND DATA$REQUEST$ACTION not in ('GET','HEAD') ORDER BY EVENT_TIME DESC 16:22:54 5c.385 16:22:56 5c "00585_oci360_5c_385_identity_actions.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:22:58 5c "Audit" 16:22:58 Load Balancer Actions select DISTINCT DATA$EVENT_NAME, cast(TO_TIMESTAMP_TZ(EVENT_TIME,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') AT LOCAL AS DATE) EVENT_TIME, EVENT_TYPE, SOURCE, /* CREDENTIAL_ID, */ DATA$IDENTITY$TENANT_ID, DATA$IDENTITY$PRINCIPAL_NAME, DATA$IDENTITY$PRINCIPAL_ID, DATA$IDENTITY$USER_AGENT, DATA$IDENTITY$IP_ADDRESS, DATA$RESPONSE$RESPONSE_TIME, DATA$COMPARTMENT_ID, DATA$COMPARTMENT_NAME, DATA$REQUEST$ACTION, DATA$RESPONSE$STATUS, DATA$RESOURCE_NAME, DATA$RESOURCE_ID /* NVL("response_payload$id","response_payload$id") response_payload$id, */ /* NVL("response_payload$ResourceName","response_payload$resourceName") response_payload$resourceName */ FROM OCI360_AUDIT_EVENTS WHERE SOURCE='OraLB-API' AND DATA$REQUEST$ACTION not in ('GET','HEAD') ORDER BY EVENT_TIME DESC 16:22:58 5c.386 16:22:59 5c "00586_oci360_5c_386_load_balancer_actions.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:02 5d "Portal Account Metering" 16:23:02 Service Entitlements SELECT t1.* FROM OCI360_SERV_ENTITLEMENTS t1 16:23:02 5d.387 16:23:03 5d "00587_oci360_5d_387_service_entitlements.html" 23 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:05 5d "Portal Account Metering" 16:23:05 Service Resources SELECT t1.* FROM OCI360_SERV_RESOURCES t1 16:23:05 5d.388 16:23:05 5d "00588_oci360_5d_388_service_resources.html" 658 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:08 5d "Portal Account Metering" 16:23:08 Resources Unit Prices select distinct TO_CHAR(CEIL(COSTS$UNITPRICE*10000)/10000,'999G990D0000') UNITPRICE, /* CEIL * 10000 / 10000 is same as ROUNG UP in 4th digit */ COSTS$OVERAGESFLAG OVERAGESFLAG, CURRENCY, SERVICENAME, GSIPRODUCTID, RESOURCENAME, SUBSCRIPTIONID, SUBSCRIPTIONTYPE, DATACENTERID, SERVICEENTITLEMENTID from OCI360_USAGECOSTS order by SERVICENAME, RESOURCENAME 16:23:08 5d.389 16:23:09 5d "00589_oci360_5d_389_resources_unit_prices.html" 16 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:12 5d "Portal Account Metering" 16:23:12 Cost division per Service, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT COSTS$COMPUTEDAMOUNT COMPUTEDAMOUNT, SERVICENAME, CURRENCY FROM OCI360_USAGECOSTS ), t2 as (select sum(COMPUTEDAMOUNT) total_global from t1) SELECT t1.SERVICENAME || ' - ' || t1.CURRENCY || ' ' || round(sum(COMPUTEDAMOUNT)) SERVICENAME, round(sum(COMPUTEDAMOUNT)) total, trim(to_char(round(sum(COMPUTEDAMOUNT)/decode(total_global,0,1,total_global),4)*100,'990D99')) percent FROM t1, t2 GROUP BY t1.SERVICENAME,t1.CURRENCY,total_global having sum(COMPUTEDAMOUNT) <> 0 order by total desc 16:23:12 5d.390 16:23:13 5d "00590_oci360_5d_390_cost_division_per_service.html" 16:23:17 5d "00591_oci360_5d_390_cost_division_per_service_pie_chart.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:20 5d "Portal Account Metering" 16:23:20 Cost division per Resource, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT COSTS$COMPUTEDAMOUNT COMPUTEDAMOUNT, SERVICENAME, RESOURCENAME, CURRENCY FROM OCI360_USAGECOSTS ), t2 as (select sum(COMPUTEDAMOUNT) total_global from t1) SELECT t1.SERVICENAME || ' - ' || t1.RESOURCENAME || ' - ' || t1.CURRENCY || ' ' || round(sum(COMPUTEDAMOUNT)) SERVICENAME, round(sum(COMPUTEDAMOUNT)) total, trim(to_char(round(sum(COMPUTEDAMOUNT)/decode(total_global,0,1,total_global),4)*100,'990D99')) percent FROM t1, t2 GROUP BY t1.SERVICENAME,t1.RESOURCENAME,t1.CURRENCY,total_global having sum(COMPUTEDAMOUNT) <> 0 order by total desc 16:23:20 5d.391 16:23:21 5d "00592_oci360_5d_391_cost_division_per_resource.html" 16:23:24 5d "00593_oci360_5d_391_cost_division_per_resource_pie_chart.html" 7 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:25 5d "Portal Account Metering" 16:23:25 Used Quota WITH trange as ( select /*+ materialize */ trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), t1 AS ( SELECT /*+ materialize */ SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') TIMEUTC FROM OCI360_USAGECOSTS GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), tcycle AS ( SELECT /*+ materialize */ PURCHASE$PURCHASEDRESOURCES$VALUE PURCHASEDRESOURCES, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' AND TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') > trange.min ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT /*+ materialize */ trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last hour as can be an incompleted current hour. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(CEIL(tcycle.PURCHASEDRESOURCES*100)/100,'99999990D00') line1, TO_CHAR(CEIL(SUM(t1.COMPUTEDAMOUNT)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, allhours WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.TIMEUTC >= tcycle.STARTDATE AND t1.TIMEUTC < vdate+1/24 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate, PURCHASEDRESOURCES order by seq 16:23:25 5d.392 16:23:26 5d "00594_oci360_5d_392_used_quota.html" 16:23:28 5d "00595_oci360_5d_392_used_quota_line_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:29 5d "Portal Account Metering" 16:23:29 Computed Usage Costs - Last 1000 lines SELECT t1.* FROM OCI360_USAGECOSTS t1 ORDER BY TO_TIMESTAMP(LASTCOMPUTATIONDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') DESC FETCH NEXT 1000 ROWS ONLY 16:23:29 5d.393 16:23:30 5d "00596_oci360_5d_393_computed_usage_costs_last_1000_lines.html" 1000 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:33 5d "Portal Account Metering" 16:23:33 Computed Usage Costs Tagged - Last 1000 lines SELECT t1.* FROM OCI360_USAGECOSTS_TAGGED_DAILY t1 ORDER BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') DESC FETCH NEXT 1000 ROWS ONLY 16:23:33 5d.394 16:23:33 5d "00597_oci360_5d_394_computed_usage_costs_tagged_last_1000_lines.html" 1000 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:39 5d "Portal Account Metering" 16:23:39 Computed Usage - Last 1000 lines SELECT t1.* FROM OCI360_USAGE t1 ORDER BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') DESC FETCH NEXT 1000 ROWS ONLY 16:23:39 5d.395 16:23:40 5d "00598_oci360_5d_395_computed_usage_last_1000_lines.html" 1000 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:49 5d "Portal Account Metering" 16:23:49 Usage Tags SELECT t1.* FROM OCI360_USAGETAGS t1 16:23:49 5d.396 16:23:51 5d "00599_oci360_5d_396_usage_tags.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:58 5d "Portal Account Metering" 16:23:58 Account Details SELECT distinct ID, PAYG, STATUS, PROMOTION, SOFTLIMIT, BILLINGTYPE, HARDLIMITALL, HARDLIMITNEW, CANONICALLINK, ENTITLEMENTID, CLOUDBUCKSTYPE, OVERAGESALLOWED, SUBSCRIPTIONTYPE, SUBSCRIPTIONCATEGORY FROM OCI360_ACCOUNTDETAILS t1 16:23:58 5d.397 16:23:58 5d "00600_oci360_5d_397_account_details.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:23:59 5d "Portal Account Metering" 16:23:59 Account Balance SELECT BALANCE$ID, BALANCE$CREATEDON, BALANCE$PURCHASEDRESOURCES$NAME, BALANCE$PURCHASEDRESOURCES$UNIT, BALANCE$PURCHASEDRESOURCES$VALUE, BALANCE$PURCHASEDRESOURCES$DERIVED, BALANCE$PURCHASEDRESOURCES$CREATEDON, BALANCE$PURCHASEDRESOURCES$MODIFIEDON FROM OCI360_ACCOUNTDETAILS t1 WHERE BALANCE$ID is not null 16:23:59 5d.398 16:24:00 5d "00601_oci360_5d_398_account_balance.html" 3 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:24:02 5d "Portal Account Metering" 16:24:02 Account Purchase SELECT PURCHASE$ID, PURCHASE$CREATEDON, PURCHASE$SOFTLIMIT, PURCHASE$HARDLIMITALL, PURCHASE$HARDLIMITNEW, PURCHASE$OVERAGESALLOWED, PURCHASE$PURCHASEDRESOURCES$NAME, PURCHASE$PURCHASEDRESOURCES$UNIT, PURCHASE$PURCHASEDRESOURCES$VALUE, PURCHASE$PURCHASEDRESOURCES$ENDDATE, PURCHASE$PURCHASEDRESOURCES$CREATEDON, PURCHASE$PURCHASEDRESOURCES$STARTDATE, PURCHASE$PURCHASEDRESOURCES$PURCHASETYPE FROM OCI360_ACCOUNTDETAILS t1 WHERE PURCHASE$ID is not null ORDER BY PURCHASE$PURCHASEDRESOURCES$STARTDATE ASC 16:24:02 5d.399 16:24:03 5d "00602_oci360_5d_399_account_purchase.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:24:04 5d "Portal Account Metering" 16:24:04 Account Running Balance SELECT RUNNINGBALANCE$ID, RUNNINGBALANCE$CREATEDON, RUNNINGBALANCE$PURCHASEDRESOURCES$NAME, RUNNINGBALANCE$PURCHASEDRESOURCES$UNIT, RUNNINGBALANCE$PURCHASEDRESOURCES$VALUE, RUNNINGBALANCE$PURCHASEDRESOURCES$DERIVED, RUNNINGBALANCE$PURCHASEDRESOURCES$CREATEDON, RUNNINGBALANCE$PURCHASEDRESOURCES$MODIFIEDON, RUNNINGBALANCE$PURCHASEDRESOURCES$PURCHASETYPE FROM OCI360_ACCOUNTDETAILS t1 WHERE RUNNINGBALANCE$ID is not null 16:24:04 5d.400 16:24:05 5d "00603_oci360_5d_400_account_running_balance.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:24:07 5d "Portal Account Metering" 16:24:07 Check Quota SELECT t1.* FROM OCI360_CHECKQUOTA t1 16:24:07 5d.401 16:24:07 5d "00604_oci360_5d_401_check_quota.html" 729 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:24:46 5d "Portal Account Metering" 16:24:46 Promotions SELECT t1.* FROM OCI360_PROMOTIONS t1 16:24:46 5d.402 16:24:48 5d "00605_oci360_5d_402_promotions.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:24:55 5d "Portal Account Metering" 16:24:55 Cloud Limits SELECT t1.* FROM OCI360_CLOUDLIMITS t1 16:24:55 5d.403 16:24:57 5d "00606_oci360_5d_403_cloud_limits.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:25:02 5d "Portal Account Metering" 16:25:02 Raw Computed Usage Costs Tagged SELECT t1.* FROM OCI360_USAGECOSTS_TAGGED_DAILY t1 ORDER BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') DESC 16:25:02 5d.404 16:25:03 5d "00607_oci360_5d_404_raw_computed_usage_costs_tagged.csv" 4267 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:25:04 5d "Portal Account Metering" 16:25:04 Raw Computed Usage Costs SELECT t1.* FROM OCI360_USAGECOSTS t1 ORDER BY TO_TIMESTAMP(LASTCOMPUTATIONDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') DESC 16:25:04 5d.405 16:25:04 5d "00608_oci360_5d_405_raw_computed_usage_costs.csv" 15978 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:25:07 5e "Portal Account Periods" 16:25:07 Distinct Tags, Resources, Services SELECT DISTINCT TAG, RESOURCENAME, SERVICENAME FROM OCI360_USAGECOSTS_TAGGED_DAILY t1 WHERE EXISTS (SELECT 1 FROM OCI360_USAGECOSTS_TAGGED_DAILY t3 WHERE t3.TAG = t1.TAG HAVING SUM(COSTS$COMPUTEDAMOUNT) > 0) ORDER BY 1,2,3 16:25:07 5e.406 16:25:08 5e "00609_oci360_5e_406_distinct_tags_resources_services.html" 226 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:25:10 5e.1 "Per Hour" 16:25:10 Tag: Oracle-Tags:CreatedBy=oracleidentitycloudservice/user4@acme.com, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'Oracle-Tags:CreatedBy=oracleidentitycloudservice/user4@acme.com' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:25:10 5e.1.407 16:25:10 5e.1 "00610_oci360_5e.1_407_tag_oracletagscreatedbyoracleidentitycloudservicerodrigoaraujojorgegmailcom.html" 16:25:13 5e.1 "00611_oci360_5e.1_407_tag_oracletagscreatedbyoracleidentitycloudservicerodrigoaraujojorgegmailcom_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:25:18 5e.1 "Per Hour" 16:25:18 Tag: Oracle-Tags:CreatedBy=user4@acme.com, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'Oracle-Tags:CreatedBy=user4@acme.com' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:25:18 5e.1.408 16:25:19 5e.1 "00612_oci360_5e.1_408_tag_oracletagscreatedbyrodrigoaraujojorgegmailcom.html" 16:25:24 5e.1 "00613_oci360_5e.1_408_tag_oracletagscreatedbyrodrigoaraujojorgegmailcom_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:25:29 5e.1 "Per Hour" 16:25:29 Custom Tags - Total Costs 16:25:29 5e.1.409 16:25:30 5e.1 "00614_oci360_5e.1_409_custom_tags_total_costs.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:25:31 5e.1 "Per Hour" 16:25:31 Compartment: ORCL:OCICompartmentPath=dbarj, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:25:31 5e.1.410 16:25:32 5e.1 "00615_oci360_5e.1_410_compartment_orclocicompartmentpathdbarj.html" 16:25:35 5e.1 "00616_oci360_5e.1_410_compartment_orclocicompartmentpathdbarj_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:25:37 5e.1 "Per Hour" 16:25:37 Compartment: ORCL:OCICompartmentPath=dbarj/Ops, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:25:37 5e.1.411 16:25:38 5e.1 "00617_oci360_5e.1_411_compartment_orclocicompartmentpathdbarjops.html" 16:25:42 5e.1 "00618_oci360_5e.1_411_compartment_orclocicompartmentpathdbarjops_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:25:47 5e.1 "Per Hour" 16:25:47 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Dev, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Dev' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:25:47 5e.1.412 16:25:48 5e.1 "00619_oci360_5e.1_412_compartment_orclocicompartmentpathdbarjopsdev.html" 16:25:52 5e.1 "00620_oci360_5e.1_412_compartment_orclocicompartmentpathdbarjopsdev_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:25:57 5e.1 "Per Hour" 16:25:57 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Dev/A, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Dev/A' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:25:57 5e.1.413 16:25:58 5e.1 "00621_oci360_5e.1_413_compartment_orclocicompartmentpathdbarjopsdeva.html" 16:26:00 5e.1 "00622_oci360_5e.1_413_compartment_orclocicompartmentpathdbarjopsdeva_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:26:02 5e.1 "Per Hour" 16:26:02 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Test, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:26:02 5e.1.414 16:26:02 5e.1 "00623_oci360_5e.1_414_compartment_orclocicompartmentpathdbarjopstest.html" 16:26:04 5e.1 "00624_oci360_5e.1_414_compartment_orclocicompartmentpathdbarjopstest_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:26:06 5e.1 "Per Hour" 16:26:06 Compartment: ORCL:OCICompartmentPath=dbarj/Test, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:26:06 5e.1.415 16:26:07 5e.1 "00625_oci360_5e.1_415_compartment_orclocicompartmentpathdbarjtest.html" 16:26:09 5e.1 "00626_oci360_5e.1_415_compartment_orclocicompartmentpathdbarjtest_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:26:12 5e.1 "Per Hour" 16:26:12 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:26:12 5e.1.416 16:26:13 5e.1 "00627_oci360_5e.1_416_compartment_orclocicompartmentpathdbarjcomptdev.html" 16:26:18 5e.1 "00628_oci360_5e.1_416_compartment_orclocicompartmentpathdbarjcomptdev_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:26:23 5e.1 "Per Hour" 16:26:23 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_app, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:26:23 5e.1.417 16:26:24 5e.1 "00629_oci360_5e.1_417_compartment_orclocicompartmentpathdbarjcomptdevcomptdevapp.html" 16:26:26 5e.1 "00630_oci360_5e.1_417_compartment_orclocicompartmentpathdbarjcomptdevcomptdevapp_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:26:30 5e.1 "Per Hour" 16:26:30 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_db, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:26:30 5e.1.418 16:26:31 5e.1 "00631_oci360_5e.1_418_compartment_orclocicompartmentpathdbarjcomptdevcomptdevdb.html" 16:26:36 5e.1 "00632_oci360_5e.1_418_compartment_orclocicompartmentpathdbarjcomptdevcomptdevdb_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:26:43 5e.1 "Per Hour" 16:26:43 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_net, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:26:43 5e.1.419 16:26:44 5e.1 "00633_oci360_5e.1_419_compartment_orclocicompartmentpathdbarjcomptdevcomptdevnet.html" 16:26:48 5e.1 "00634_oci360_5e.1_419_compartment_orclocicompartmentpathdbarjcomptdevcomptdevnet_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:26:51 5e.1 "Per Hour" 16:26:51 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:26:51 5e.1.420 16:26:53 5e.1 "00635_oci360_5e.1_420_compartment_orclocicompartmentpathdbarjcomptprod.html" 16:26:56 5e.1 "00636_oci360_5e.1_420_compartment_orclocicompartmentpathdbarjcomptprod_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:26:58 5e.1 "Per Hour" 16:26:58 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_app, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:26:58 5e.1.421 16:26:59 5e.1 "00637_oci360_5e.1_421_compartment_orclocicompartmentpathdbarjcomptprodcomptprodapp.html" 16:27:01 5e.1 "00638_oci360_5e.1_421_compartment_orclocicompartmentpathdbarjcomptprodcomptprodapp_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:27:02 5e.1 "Per Hour" 16:27:02 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_db, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:27:02 5e.1.422 16:27:03 5e.1 "00639_oci360_5e.1_422_compartment_orclocicompartmentpathdbarjcomptprodcomptproddb.html" 16:27:05 5e.1 "00640_oci360_5e.1_422_compartment_orclocicompartmentpathdbarjcomptprodcomptproddb_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:27:08 5e.1 "Per Hour" 16:27:08 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_net, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:27:08 5e.1.423 16:27:09 5e.1 "00641_oci360_5e.1_423_compartment_orclocicompartmentpathdbarjcomptprodcomptprodnet.html" 16:27:14 5e.1 "00642_oci360_5e.1_423_compartment_orclocicompartmentpathdbarjcomptprodcomptprodnet_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:27:18 5e.1 "Per Hour" 16:27:18 Compartment: ORCL:OCICompartmentPath=dbarj/compt_ss, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_ss' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:27:18 5e.1.424 16:27:20 5e.1 "00643_oci360_5e.1_424_compartment_orclocicompartmentpathdbarjcomptss.html" 16:27:23 5e.1 "00644_oci360_5e.1_424_compartment_orclocicompartmentpathdbarjcomptss_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:27:25 5e.1 "Per Hour" 16:27:25 Compartment: ORCL:OCICompartmentPath=dbarj/compt_ss/compt_ss_net, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_ss/compt_ss_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:27:25 5e.1.425 16:27:26 5e.1 "00645_oci360_5e.1_425_compartment_orclocicompartmentpathdbarjcomptsscomptssnet.html" 16:27:30 5e.1 "00646_oci360_5e.1_425_compartment_orclocicompartmentpathdbarjcomptsscomptssnet_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:27:38 5e.1 "Per Hour" 16:27:38 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:27:38 5e.1.426 16:27:40 5e.1 "00647_oci360_5e.1_426_compartment_orclocicompartmentpathdbarjcompttest.html" 16:27:44 5e.1 "00648_oci360_5e.1_426_compartment_orclocicompartmentpathdbarjcompttest_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:27:50 5e.1 "Per Hour" 16:27:50 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_app, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:27:50 5e.1.427 16:27:50 5e.1 "00649_oci360_5e.1_427_compartment_orclocicompartmentpathdbarjcompttestcompttestapp.html" 16:27:51 5e.1 "00650_oci360_5e.1_427_compartment_orclocicompartmentpathdbarjcompttestcompttestapp_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:27:53 5e.1 "Per Hour" 16:27:53 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_db, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:27:53 5e.1.428 16:27:54 5e.1 "00651_oci360_5e.1_428_compartment_orclocicompartmentpathdbarjcompttestcompttestdb.html" 16:27:56 5e.1 "00652_oci360_5e.1_428_compartment_orclocicompartmentpathdbarjcompttestcompttestdb_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:27:57 5e.1 "Per Hour" 16:27:57 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_net, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:27:57 5e.1.429 16:27:58 5e.1 "00653_oci360_5e.1_429_compartment_orclocicompartmentpathdbarjcompttestcompttestnet.html" 16:28:00 5e.1 "00654_oci360_5e.1_429_compartment_orclocicompartmentpathdbarjcompttestcompttestnet_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:28:03 5e.1 "Per Hour" 16:28:03 Compartment: ORCL:OCICompartmentPath=dbarj/enkitec_br, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/enkitec_br' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:28:03 5e.1.430 16:28:03 5e.1 "00655_oci360_5e.1_430_compartment_orclocicompartmentpathdbarjenkitecbr.html" 16:28:06 5e.1 "00656_oci360_5e.1_430_compartment_orclocicompartmentpathdbarjenkitecbr_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:28:11 5e.1 "Per Hour" 16:28:11 Compartments - Total Costs 16:28:11 5e.1.431 16:28:14 5e.1 "00657_oci360_5e.1_431_compartments_total_costs.html" 21 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:28:20 5e.1 "Per Hour" 16:28:20 Service Group: ORCL:OCIService=Block Storage, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCIService=Block Storage' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:28:20 5e.1.432 16:28:20 5e.1 "00658_oci360_5e.1_432_service_group_orclociserviceblock_storage.html" 16:28:24 5e.1 "00659_oci360_5e.1_432_service_group_orclociserviceblock_storage_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:28:26 5e.1 "Per Hour" 16:28:26 Service Group: ORCL:OCIService=Compute, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCIService=Compute' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:28:26 5e.1.433 16:28:27 5e.1 "00660_oci360_5e.1_433_service_group_orclociservicecompute.html" 16:28:30 5e.1 "00661_oci360_5e.1_433_service_group_orclociservicecompute_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:28:33 5e.1 "Per Hour" 16:28:33 Service Group: ORCL:OCIService=Database, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCIService=Database' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:28:33 5e.1.434 16:28:33 5e.1 "00662_oci360_5e.1_434_service_group_orclociservicedatabase.html" 16:28:38 5e.1 "00663_oci360_5e.1_434_service_group_orclociservicedatabase_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:28:43 5e.1 "Per Hour" 16:28:43 Service Group: ORCL:OCIService=Object Storage, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_HOURLY WHERE TAG = 'ORCL:OCIService=Object Storage' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_HOURLY ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:28:43 5e.1.435 16:28:43 5e.1 "00664_oci360_5e.1_435_service_group_orclociserviceobject_storage.html" 16:28:46 5e.1 "00665_oci360_5e.1_435_service_group_orclociserviceobject_storage_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:28:49 5e.1 "Per Hour" 16:28:49 Service Groups - Total Costs 16:28:49 5e.1.436 16:28:50 5e.1 "00666_oci360_5e.1_436_service_groups_total_costs.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:28:51 5e.1 "Per Hour" 16:28:51 Service Name: COMPUTEBAREMETAL, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE SERVICENAME = 'COMPUTEBAREMETAL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:28:51 5e.1.437 16:28:52 5e.1 "00667_oci360_5e.1_437_service_name_computebaremetal.html" 16:28:55 5e.1 "00668_oci360_5e.1_437_service_name_computebaremetal_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:28:58 5e.1 "Per Hour" 16:28:58 Service Name: DATABASEBAREMETAL, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE SERVICENAME = 'DATABASEBAREMETAL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:28:58 5e.1.438 16:29:01 5e.1 "00669_oci360_5e.1_438_service_name_databasebaremetal.html" 16:29:05 5e.1 "00670_oci360_5e.1_438_service_name_databasebaremetal_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:29:11 5e.1 "Per Hour" 16:29:11 Services - Total Costs 16:29:11 5e.1.439 16:29:12 5e.1 "00671_oci360_5e.1_439_services_total_costs.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:29:14 5e.1 "Per Hour" 16:29:14 Resource: Block Volumes, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_BLOCK_STORAGE_STANDARD' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:29:14 5e.1.440 16:29:15 5e.1 "00672_oci360_5e.1_440_resource_block_volumes.html" 16:29:17 5e.1 "00673_oci360_5e.1_440_resource_block_volumes_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:29:18 5e.1 "Per Hour" 16:29:18 Resource: Compute Standard E2, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_COMPUTE_STANDARD_E2' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:29:18 5e.1.441 16:29:19 5e.1 "00674_oci360_5e.1_441_resource_compute_standard_e2.html" 16:29:21 5e.1 "00675_oci360_5e.1_441_resource_compute_standard_e2_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:29:23 5e.1 "Per Hour" 16:29:23 Resource: Database Cloud Service - All Editions - BYOL, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_DATABASE_CLOUD_ALL_EDITION_BYOL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:29:23 5e.1.442 16:29:23 5e.1 "00676_oci360_5e.1_442_resource_database_cloud_service_all_editions_byol.html" 16:29:26 5e.1 "00677_oci360_5e.1_442_resource_database_cloud_service_all_editions_byol_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:29:29 5e.1 "Per Hour" 16:29:29 Resource: Database Cloud Service - Enterprise Edition, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_DATABASE_CLOUD_ENTERPRISE_EDITION' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:29:29 5e.1.443 16:29:31 5e.1 "00678_oci360_5e.1_443_resource_database_cloud_service_enterprise_edition.html" 16:29:35 5e.1 "00679_oci360_5e.1_443_resource_database_cloud_service_enterprise_edition_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:29:37 5e.1 "Per Hour" 16:29:37 Resource: Object Storage - Requests, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_OBJECT_STORAGE_REQUEST_TIERED' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:29:37 5e.1.444 16:29:37 5e.1 "00680_oci360_5e.1_444_resource_object_storage_requests.html" 16:29:40 5e.1 "00681_oci360_5e.1_444_resource_object_storage_requests_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:29:41 5e.1 "Per Hour" 16:29:41 Resource: Block Volume Performance Units, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_STANDARD_PERFORMANCE' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:29:41 5e.1.445 16:29:42 5e.1 "00682_oci360_5e.1_445_resource_block_volume_performance_units.html" 16:29:44 5e.1 "00683_oci360_5e.1_445_resource_block_volume_performance_units_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:29:45 5e.1 "Per Hour" 16:29:45 Resource: Block Volume Storage, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_STANDARD_STORAGE' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:29:45 5e.1.446 16:29:46 5e.1 "00684_oci360_5e.1_446_resource_block_volume_storage.html" 16:29:49 5e.1 "00685_oci360_5e.1_446_resource_block_volume_storage_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:29:52 5e.1 "Per Hour" 16:29:52 Resources - Total Costs 16:29:52 5e.1.447 16:29:54 5e.1 "00686_oci360_5e.1_447_resources_total_costs.html" 7 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:29:57 5e.1 "Per Hour" 16:29:57 Total per hour, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE 1 = 1 GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1/24,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:29:57 5e.1.448 16:29:58 5e.1 "00687_oci360_5e.1_448_total_per_hour.html" 16:30:04 5e.1 "00688_oci360_5e.1_448_total_per_hour_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:30:10 5e.1 "Per Hour" 16:30:10 Top 15 Resources - Total per hour, between 2020-04-18 and 2020-06-28 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC, RESOURCENAME FROM OCI360_USAGECOSTS GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM'), RESOURCENAME ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), allhours as ( /* Will generate all hours between Min and Max Start Time */ SELECT trange.min + (rownum - 1)/24 vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1)/24 <= trange.max - 1/24 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min)*24 + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_DATABASE_CLOUD_ENTERPRISE_EDITION',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_BLOCK_STORAGE_STANDARD',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_COMPUTE_STANDARD_E2',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_DATABASE_CLOUD_ALL_EDITION_BYOL',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_STANDARD_STORAGE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_OBJECT_STORAGE_REQUEST_TIERED',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_STANDARD_PERFORMANCE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'ATP_PAAS_FREE_OCPU_HOUR',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'ATP_PAAS_XD_FREE_TB_MONTH',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_BLOCK_STORAGE_STANDARD_FREE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_COMPUTE_OUTBOUND_DATA_TRANSFER',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_COMPUTE_VM_STANDARD_E2_MICRO_FREE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_METRIC_CONSUMPTION',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_OBJECT_STORAGE_TIERED',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_OCI_KMS_KEYVERSION',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, allhours where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1/24 group by seq, vdate order by seq 16:30:10 5e.1.449 16:30:11 5e.1 "00689_oci360_5e.1_449_top_15_resources_total_per_hour.html" 16:30:21 5e.1 "00690_oci360_5e.1_449_top_15_resources_total_per_hour_line_chart.html" 1683 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:30:30 5e.2 "Per Day" 16:30:30 Tag: Oracle-Tags:CreatedBy=oracleidentitycloudservice/user4@acme.com, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'Oracle-Tags:CreatedBy=oracleidentitycloudservice/user4@acme.com' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:30:30 5e.2.450 16:30:32 5e.2 "00691_oci360_5e.2_450_tag_oracletagscreatedbyoracleidentitycloudservicerodrigoaraujojorgegmailcom.html" 16:30:37 5e.2 "00692_oci360_5e.2_450_tag_oracletagscreatedbyoracleidentitycloudservicerodrigoaraujojorgegmailcom_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:30:41 5e.2 "Per Day" 16:30:41 Tag: Oracle-Tags:CreatedBy=user4@acme.com, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'Oracle-Tags:CreatedBy=user4@acme.com' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:30:41 5e.2.451 16:30:42 5e.2 "00693_oci360_5e.2_451_tag_oracletagscreatedbyrodrigoaraujojorgegmailcom.html" 16:30:44 5e.2 "00694_oci360_5e.2_451_tag_oracletagscreatedbyrodrigoaraujojorgegmailcom_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:30:48 5e.2 "Per Day" 16:30:48 Custom Tags - Total Costs 16:30:48 5e.2.452 16:30:52 5e.2 "00695_oci360_5e.2_452_custom_tags_total_costs.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:30:56 5e.2 "Per Day" 16:30:56 Compartment: ORCL:OCICompartmentPath=dbarj, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:30:56 5e.2.453 16:30:57 5e.2 "00696_oci360_5e.2_453_compartment_orclocicompartmentpathdbarj.html" 16:31:02 5e.2 "00697_oci360_5e.2_453_compartment_orclocicompartmentpathdbarj_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:31:06 5e.2 "Per Day" 16:31:06 Compartment: ORCL:OCICompartmentPath=dbarj/Ops, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:31:06 5e.2.454 16:31:07 5e.2 "00698_oci360_5e.2_454_compartment_orclocicompartmentpathdbarjops.html" 16:31:12 5e.2 "00699_oci360_5e.2_454_compartment_orclocicompartmentpathdbarjops_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:31:21 5e.2 "Per Day" 16:31:21 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Dev, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Dev' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:31:21 5e.2.455 16:31:22 5e.2 "00700_oci360_5e.2_455_compartment_orclocicompartmentpathdbarjopsdev.html" 16:31:24 5e.2 "00701_oci360_5e.2_455_compartment_orclocicompartmentpathdbarjopsdev_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:31:28 5e.2 "Per Day" 16:31:28 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Dev/A, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Dev/A' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:31:28 5e.2.456 16:31:30 5e.2 "00702_oci360_5e.2_456_compartment_orclocicompartmentpathdbarjopsdeva.html" 16:31:38 5e.2 "00703_oci360_5e.2_456_compartment_orclocicompartmentpathdbarjopsdeva_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:31:42 5e.2 "Per Day" 16:31:42 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Test, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:31:42 5e.2.457 16:31:44 5e.2 "00704_oci360_5e.2_457_compartment_orclocicompartmentpathdbarjopstest.html" 16:31:48 5e.2 "00705_oci360_5e.2_457_compartment_orclocicompartmentpathdbarjopstest_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:31:49 5e.2 "Per Day" 16:31:49 Compartment: ORCL:OCICompartmentPath=dbarj/Test, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:31:49 5e.2.458 16:31:49 5e.2 "00706_oci360_5e.2_458_compartment_orclocicompartmentpathdbarjtest.html" 16:31:51 5e.2 "00707_oci360_5e.2_458_compartment_orclocicompartmentpathdbarjtest_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:31:52 5e.2 "Per Day" 16:31:52 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:31:52 5e.2.459 16:31:53 5e.2 "00708_oci360_5e.2_459_compartment_orclocicompartmentpathdbarjcomptdev.html" 16:31:57 5e.2 "00709_oci360_5e.2_459_compartment_orclocicompartmentpathdbarjcomptdev_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:32:00 5e.2 "Per Day" 16:32:00 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_app, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:32:00 5e.2.460 16:32:00 5e.2 "00710_oci360_5e.2_460_compartment_orclocicompartmentpathdbarjcomptdevcomptdevapp.html" 16:32:01 5e.2 "00711_oci360_5e.2_460_compartment_orclocicompartmentpathdbarjcomptdevcomptdevapp_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:32:01 5e.2 "Per Day" 16:32:01 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_db, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:32:01 5e.2.461 16:32:02 5e.2 "00712_oci360_5e.2_461_compartment_orclocicompartmentpathdbarjcomptdevcomptdevdb.html" 16:32:04 5e.2 "00713_oci360_5e.2_461_compartment_orclocicompartmentpathdbarjcomptdevcomptdevdb_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:32:06 5e.2 "Per Day" 16:32:06 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:32:06 5e.2.462 16:32:07 5e.2 "00714_oci360_5e.2_462_compartment_orclocicompartmentpathdbarjcomptdevcomptdevnet.html" 16:32:14 5e.2 "00715_oci360_5e.2_462_compartment_orclocicompartmentpathdbarjcomptdevcomptdevnet_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:32:20 5e.2 "Per Day" 16:32:20 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:32:20 5e.2.463 16:32:22 5e.2 "00716_oci360_5e.2_463_compartment_orclocicompartmentpathdbarjcomptprod.html" 16:32:34 5e.2 "00717_oci360_5e.2_463_compartment_orclocicompartmentpathdbarjcomptprod_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:32:40 5e.2 "Per Day" 16:32:40 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_app, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:32:40 5e.2.464 16:32:42 5e.2 "00718_oci360_5e.2_464_compartment_orclocicompartmentpathdbarjcomptprodcomptprodapp.html" 16:32:49 5e.2 "00719_oci360_5e.2_464_compartment_orclocicompartmentpathdbarjcomptprodcomptprodapp_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:32:55 5e.2 "Per Day" 16:32:55 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_db, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:32:55 5e.2.465 16:32:59 5e.2 "00720_oci360_5e.2_465_compartment_orclocicompartmentpathdbarjcomptprodcomptproddb.html" 16:33:01 5e.2 "00721_oci360_5e.2_465_compartment_orclocicompartmentpathdbarjcomptprodcomptproddb_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:33:04 5e.2 "Per Day" 16:33:04 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:33:04 5e.2.466 16:33:05 5e.2 "00722_oci360_5e.2_466_compartment_orclocicompartmentpathdbarjcomptprodcomptprodnet.html" 16:33:07 5e.2 "00723_oci360_5e.2_466_compartment_orclocicompartmentpathdbarjcomptprodcomptprodnet_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:33:09 5e.2 "Per Day" 16:33:09 Compartment: ORCL:OCICompartmentPath=dbarj/compt_ss, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_ss' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:33:09 5e.2.467 16:33:09 5e.2 "00724_oci360_5e.2_467_compartment_orclocicompartmentpathdbarjcomptss.html" 16:33:11 5e.2 "00725_oci360_5e.2_467_compartment_orclocicompartmentpathdbarjcomptss_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:33:14 5e.2 "Per Day" 16:33:14 Compartment: ORCL:OCICompartmentPath=dbarj/compt_ss/compt_ss_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_ss/compt_ss_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:33:14 5e.2.468 16:33:14 5e.2 "00726_oci360_5e.2_468_compartment_orclocicompartmentpathdbarjcomptsscomptssnet.html" 16:33:17 5e.2 "00727_oci360_5e.2_468_compartment_orclocicompartmentpathdbarjcomptsscomptssnet_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:33:19 5e.2 "Per Day" 16:33:19 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:33:19 5e.2.469 16:33:19 5e.2 "00728_oci360_5e.2_469_compartment_orclocicompartmentpathdbarjcompttest.html" 16:33:20 5e.2 "00729_oci360_5e.2_469_compartment_orclocicompartmentpathdbarjcompttest_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:33:21 5e.2 "Per Day" 16:33:21 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_app, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:33:21 5e.2.470 16:33:21 5e.2 "00730_oci360_5e.2_470_compartment_orclocicompartmentpathdbarjcompttestcompttestapp.html" 16:33:25 5e.2 "00731_oci360_5e.2_470_compartment_orclocicompartmentpathdbarjcompttestcompttestapp_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:33:29 5e.2 "Per Day" 16:33:29 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_db, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:33:29 5e.2.471 16:33:30 5e.2 "00732_oci360_5e.2_471_compartment_orclocicompartmentpathdbarjcompttestcompttestdb.html" 16:33:34 5e.2 "00733_oci360_5e.2_471_compartment_orclocicompartmentpathdbarjcompttestcompttestdb_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:33:39 5e.2 "Per Day" 16:33:39 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:33:39 5e.2.472 16:33:40 5e.2 "00734_oci360_5e.2_472_compartment_orclocicompartmentpathdbarjcompttestcompttestnet.html" 16:33:45 5e.2 "00735_oci360_5e.2_472_compartment_orclocicompartmentpathdbarjcompttestcompttestnet_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:00 5e.2 "Per Day" 16:34:00 Compartment: ORCL:OCICompartmentPath=dbarj/enkitec_br, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/enkitec_br' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:34:00 5e.2.473 16:34:08 5e.2 "00736_oci360_5e.2_473_compartment_orclocicompartmentpathdbarjenkitecbr.html" 16:34:10 5e.2 "00737_oci360_5e.2_473_compartment_orclocicompartmentpathdbarjenkitecbr_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:15 5e.2 "Per Day" 16:34:15 Compartments - Total Costs 16:34:15 5e.2.474 16:34:17 5e.2 "00738_oci360_5e.2_474_compartments_total_costs.html" 21 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:21 5e.2 "Per Day" 16:34:21 Service Group: ORCL:OCIService=Block Storage, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Block Storage' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:34:21 5e.2.475 16:34:22 5e.2 "00739_oci360_5e.2_475_service_group_orclociserviceblock_storage.html" 16:34:24 5e.2 "00740_oci360_5e.2_475_service_group_orclociserviceblock_storage_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:26 5e.2 "Per Day" 16:34:26 Service Group: ORCL:OCIService=Compute, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Compute' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:34:26 5e.2.476 16:34:27 5e.2 "00741_oci360_5e.2_476_service_group_orclociservicecompute.html" 16:34:29 5e.2 "00742_oci360_5e.2_476_service_group_orclociservicecompute_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:31 5e.2 "Per Day" 16:34:31 Service Group: ORCL:OCIService=Database, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Database' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:34:31 5e.2.477 16:34:33 5e.2 "00743_oci360_5e.2_477_service_group_orclociservicedatabase.html" 16:34:35 5e.2 "00744_oci360_5e.2_477_service_group_orclociservicedatabase_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:37 5e.2 "Per Day" 16:34:37 Service Group: ORCL:OCIService=Object Storage, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Object Storage' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:34:37 5e.2.478 16:34:37 5e.2 "00745_oci360_5e.2_478_service_group_orclociserviceobject_storage.html" 16:34:38 5e.2 "00746_oci360_5e.2_478_service_group_orclociserviceobject_storage_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:39 5e.2 "Per Day" 16:34:39 Service Groups - Total Costs 16:34:39 5e.2.479 16:34:40 5e.2 "00747_oci360_5e.2_479_service_groups_total_costs.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:41 5e.2 "Per Day" 16:34:41 Service Name: COMPUTEBAREMETAL, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE SERVICENAME = 'COMPUTEBAREMETAL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:34:41 5e.2.480 16:34:42 5e.2 "00748_oci360_5e.2_480_service_name_computebaremetal.html" 16:34:43 5e.2 "00749_oci360_5e.2_480_service_name_computebaremetal_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:46 5e.2 "Per Day" 16:34:46 Service Name: DATABASEBAREMETAL, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE SERVICENAME = 'DATABASEBAREMETAL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:34:46 5e.2.481 16:34:47 5e.2 "00750_oci360_5e.2_481_service_name_databasebaremetal.html" 16:34:49 5e.2 "00751_oci360_5e.2_481_service_name_databasebaremetal_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:52 5e.2 "Per Day" 16:34:52 Services - Total Costs 16:34:52 5e.2.482 16:34:55 5e.2 "00752_oci360_5e.2_482_services_total_costs.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:34:59 5e.2 "Per Day" 16:34:59 Resource: Block Volumes, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_BLOCK_STORAGE_STANDARD' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:34:59 5e.2.483 16:35:01 5e.2 "00753_oci360_5e.2_483_resource_block_volumes.html" 16:35:04 5e.2 "00754_oci360_5e.2_483_resource_block_volumes_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:35:06 5e.2 "Per Day" 16:35:06 Resource: Compute Standard E2, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_COMPUTE_STANDARD_E2' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:35:06 5e.2.484 16:35:06 5e.2 "00755_oci360_5e.2_484_resource_compute_standard_e2.html" 16:35:09 5e.2 "00756_oci360_5e.2_484_resource_compute_standard_e2_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:35:11 5e.2 "Per Day" 16:35:11 Resource: Database Cloud Service - All Editions - BYOL, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_DATABASE_CLOUD_ALL_EDITION_BYOL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:35:11 5e.2.485 16:35:14 5e.2 "00757_oci360_5e.2_485_resource_database_cloud_service_all_editions_byol.html" 16:35:17 5e.2 "00758_oci360_5e.2_485_resource_database_cloud_service_all_editions_byol_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:35:23 5e.2 "Per Day" 16:35:23 Resource: Database Cloud Service - Enterprise Edition, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_DATABASE_CLOUD_ENTERPRISE_EDITION' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:35:23 5e.2.486 16:35:25 5e.2 "00759_oci360_5e.2_486_resource_database_cloud_service_enterprise_edition.html" 16:35:28 5e.2 "00760_oci360_5e.2_486_resource_database_cloud_service_enterprise_edition_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:35:33 5e.2 "Per Day" 16:35:33 Resource: Object Storage - Requests, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_OBJECT_STORAGE_REQUEST_TIERED' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:35:33 5e.2.487 16:35:35 5e.2 "00761_oci360_5e.2_487_resource_object_storage_requests.html" 16:35:39 5e.2 "00762_oci360_5e.2_487_resource_object_storage_requests_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:35:41 5e.2 "Per Day" 16:35:41 Resource: Block Volume Performance Units, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_STANDARD_PERFORMANCE' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:35:41 5e.2.488 16:35:41 5e.2 "00763_oci360_5e.2_488_resource_block_volume_performance_units.html" 16:35:43 5e.2 "00764_oci360_5e.2_488_resource_block_volume_performance_units_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:35:45 5e.2 "Per Day" 16:35:45 Resource: Block Volume Storage, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_STANDARD_STORAGE' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:35:45 5e.2.489 16:35:45 5e.2 "00765_oci360_5e.2_489_resource_block_volume_storage.html" 16:35:47 5e.2 "00766_oci360_5e.2_489_resource_block_volume_storage_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:35:49 5e.2 "Per Day" 16:35:49 Resources - Total Costs 16:35:49 5e.2.490 16:35:51 5e.2 "00767_oci360_5e.2_490_resources_total_costs.html" 7 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:35:53 5e.2 "Per Day" 16:35:53 Total per day, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE 1 = 1 GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ), result as ( select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate ), statistics as ( select REGR_SLOPE(line1,snap_id) slope, REGR_INTERCEPT(line1,snap_id) intercept from result ) select snap_id, begin_time, end_time, line1, TO_CHAR(CEIL((slope*snap_id+intercept)*100)/100,'99999990D00') line2, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from result, statistics order by snap_id 16:35:53 5e.2.491 16:35:55 5e.2 "00768_oci360_5e.2_491_total_per_day.html" 16:35:59 5e.2 "00769_oci360_5e.2_491_total_per_day_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:36:04 5e.2 "Per Day" 16:36:04 Top 15 Resources - Total per day, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC, RESOURCENAME FROM OCI360_USAGECOSTS GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM'), RESOURCENAME ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1,'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_DATABASE_CLOUD_ENTERPRISE_EDITION',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line1, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_BLOCK_STORAGE_STANDARD',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line2, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_COMPUTE_STANDARD_E2',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line3, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_DATABASE_CLOUD_ALL_EDITION_BYOL',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line4, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_STANDARD_STORAGE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line5, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_OBJECT_STORAGE_REQUEST_TIERED',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line6, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_STANDARD_PERFORMANCE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line7, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'ATP_PAAS_FREE_OCPU_HOUR',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line8, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'ATP_PAAS_XD_FREE_TB_MONTH',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line9, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_BLOCK_STORAGE_STANDARD_FREE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line10, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_COMPUTE_OUTBOUND_DATA_TRANSFER',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line11, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_COMPUTE_VM_STANDARD_E2_MICRO_FREE',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line12, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_METRIC_CONSUMPTION',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line13, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_OBJECT_STORAGE_TIERED',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line14, TO_CHAR(NVL(CEIL(SUM(DECODE(RESOURCENAME,'PIC_OCI_KMS_KEYVERSION',COMPUTEDAMOUNT,0))*100)/100,0),'99999990D00') line15 from t1, alldays where ENDTIMEUTC(+) >= vdate and ENDTIMEUTC(+) < vdate+1 group by seq, vdate order by seq 16:36:04 5e.2.492 16:36:05 5e.2 "00770_oci360_5e.2_492_top_15_resources_total_per_day.html" 16:36:06 5e.2 "00771_oci360_5e.2_492_top_15_resources_total_per_day_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:36:09 5e.3 "Per Month" 16:36:09 Tag: Oracle-Tags:CreatedBy=oracleidentitycloudservice/user4@acme.com, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'Oracle-Tags:CreatedBy=oracleidentitycloudservice/user4@acme.com' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:36:09 5e.3.493 16:36:11 5e.3 "00772_oci360_5e.3_493_tag_oracletagscreatedbyoracleidentitycloudservicerodrigoaraujojorgegmailcom.html" 16:36:13 5e.3 "00773_oci360_5e.3_493_tag_oracletagscreatedbyoracleidentitycloudservicerodrigoaraujojorgegmailcom_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:36:19 5e.3 "Per Month" 16:36:19 Tag: Oracle-Tags:CreatedBy=user4@acme.com, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'Oracle-Tags:CreatedBy=user4@acme.com' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:36:19 5e.3.494 16:36:20 5e.3 "00774_oci360_5e.3_494_tag_oracletagscreatedbyrodrigoaraujojorgegmailcom.html" 16:36:25 5e.3 "00775_oci360_5e.3_494_tag_oracletagscreatedbyrodrigoaraujojorgegmailcom_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:36:28 5e.3 "Per Month" 16:36:28 Custom Tags - Total Costs 16:36:28 5e.3.495 16:36:31 5e.3 "00776_oci360_5e.3_495_custom_tags_total_costs.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:36:37 5e.3 "Per Month" 16:36:37 Compartment: ORCL:OCICompartmentPath=dbarj, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:36:37 5e.3.496 16:36:37 5e.3 "00777_oci360_5e.3_496_compartment_orclocicompartmentpathdbarj.html" 16:36:38 5e.3 "00778_oci360_5e.3_496_compartment_orclocicompartmentpathdbarj_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:36:39 5e.3 "Per Month" 16:36:39 Compartment: ORCL:OCICompartmentPath=dbarj/Ops, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:36:39 5e.3.497 16:36:40 5e.3 "00779_oci360_5e.3_497_compartment_orclocicompartmentpathdbarjops.html" 16:36:41 5e.3 "00780_oci360_5e.3_497_compartment_orclocicompartmentpathdbarjops_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:36:42 5e.3 "Per Month" 16:36:42 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Dev, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Dev' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:36:42 5e.3.498 16:36:42 5e.3 "00781_oci360_5e.3_498_compartment_orclocicompartmentpathdbarjopsdev.html" 16:36:44 5e.3 "00782_oci360_5e.3_498_compartment_orclocicompartmentpathdbarjopsdev_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:36:45 5e.3 "Per Month" 16:36:45 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Dev/A, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Dev/A' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:36:45 5e.3.499 16:36:46 5e.3 "00783_oci360_5e.3_499_compartment_orclocicompartmentpathdbarjopsdeva.html" 16:36:48 5e.3 "00784_oci360_5e.3_499_compartment_orclocicompartmentpathdbarjopsdeva_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:36:51 5e.3 "Per Month" 16:36:51 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Test, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:36:51 5e.3.500 16:36:52 5e.3 "00785_oci360_5e.3_500_compartment_orclocicompartmentpathdbarjopstest.html" 16:36:54 5e.3 "00786_oci360_5e.3_500_compartment_orclocicompartmentpathdbarjopstest_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:36:59 5e.3 "Per Month" 16:36:59 Compartment: ORCL:OCICompartmentPath=dbarj/Test, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:36:59 5e.3.501 16:37:02 5e.3 "00787_oci360_5e.3_501_compartment_orclocicompartmentpathdbarjtest.html" 16:37:04 5e.3 "00788_oci360_5e.3_501_compartment_orclocicompartmentpathdbarjtest_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:37:09 5e.3 "Per Month" 16:37:09 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:37:09 5e.3.502 16:37:14 5e.3 "00789_oci360_5e.3_502_compartment_orclocicompartmentpathdbarjcomptdev.html" 16:37:18 5e.3 "00790_oci360_5e.3_502_compartment_orclocicompartmentpathdbarjcomptdev_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:37:24 5e.3 "Per Month" 16:37:24 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_app, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:37:24 5e.3.503 16:37:26 5e.3 "00791_oci360_5e.3_503_compartment_orclocicompartmentpathdbarjcomptdevcomptdevapp.html" 16:37:29 5e.3 "00792_oci360_5e.3_503_compartment_orclocicompartmentpathdbarjcomptdevcomptdevapp_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:37:34 5e.3 "Per Month" 16:37:34 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_db, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:37:34 5e.3.504 16:37:37 5e.3 "00793_oci360_5e.3_504_compartment_orclocicompartmentpathdbarjcomptdevcomptdevdb.html" 16:37:39 5e.3 "00794_oci360_5e.3_504_compartment_orclocicompartmentpathdbarjcomptdevcomptdevdb_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:37:39 5e.3 "Per Month" 16:37:39 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:37:39 5e.3.505 16:37:40 5e.3 "00795_oci360_5e.3_505_compartment_orclocicompartmentpathdbarjcomptdevcomptdevnet.html" 16:37:42 5e.3 "00796_oci360_5e.3_505_compartment_orclocicompartmentpathdbarjcomptdevcomptdevnet_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:37:45 5e.3 "Per Month" 16:37:45 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:37:45 5e.3.506 16:37:46 5e.3 "00797_oci360_5e.3_506_compartment_orclocicompartmentpathdbarjcomptprod.html" 16:37:48 5e.3 "00798_oci360_5e.3_506_compartment_orclocicompartmentpathdbarjcomptprod_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:37:51 5e.3 "Per Month" 16:37:51 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_app, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:37:51 5e.3.507 16:37:52 5e.3 "00799_oci360_5e.3_507_compartment_orclocicompartmentpathdbarjcomptprodcomptprodapp.html" 16:37:55 5e.3 "00800_oci360_5e.3_507_compartment_orclocicompartmentpathdbarjcomptprodcomptprodapp_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:38:02 5e.3 "Per Month" 16:38:02 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_db, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:38:02 5e.3.508 16:38:04 5e.3 "00801_oci360_5e.3_508_compartment_orclocicompartmentpathdbarjcomptprodcomptproddb.html" 16:38:12 5e.3 "00802_oci360_5e.3_508_compartment_orclocicompartmentpathdbarjcomptprodcomptproddb_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:38:14 5e.3 "Per Month" 16:38:14 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:38:14 5e.3.509 16:38:14 5e.3 "00803_oci360_5e.3_509_compartment_orclocicompartmentpathdbarjcomptprodcomptprodnet.html" 16:38:16 5e.3 "00804_oci360_5e.3_509_compartment_orclocicompartmentpathdbarjcomptprodcomptprodnet_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:38:19 5e.3 "Per Month" 16:38:19 Compartment: ORCL:OCICompartmentPath=dbarj/compt_ss, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_ss' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:38:19 5e.3.510 16:38:19 5e.3 "00805_oci360_5e.3_510_compartment_orclocicompartmentpathdbarjcomptss.html" 16:38:22 5e.3 "00806_oci360_5e.3_510_compartment_orclocicompartmentpathdbarjcomptss_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:38:24 5e.3 "Per Month" 16:38:24 Compartment: ORCL:OCICompartmentPath=dbarj/compt_ss/compt_ss_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_ss/compt_ss_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:38:24 5e.3.511 16:38:25 5e.3 "00807_oci360_5e.3_511_compartment_orclocicompartmentpathdbarjcomptsscomptssnet.html" 16:38:27 5e.3 "00808_oci360_5e.3_511_compartment_orclocicompartmentpathdbarjcomptsscomptssnet_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:38:30 5e.3 "Per Month" 16:38:30 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:38:30 5e.3.512 16:38:32 5e.3 "00809_oci360_5e.3_512_compartment_orclocicompartmentpathdbarjcompttest.html" 16:38:34 5e.3 "00810_oci360_5e.3_512_compartment_orclocicompartmentpathdbarjcompttest_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:38:39 5e.3 "Per Month" 16:38:39 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_app, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:38:39 5e.3.513 16:38:42 5e.3 "00811_oci360_5e.3_513_compartment_orclocicompartmentpathdbarjcompttestcompttestapp.html" 16:38:44 5e.3 "00812_oci360_5e.3_513_compartment_orclocicompartmentpathdbarjcompttestcompttestapp_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:38:46 5e.3 "Per Month" 16:38:46 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_db, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:38:46 5e.3.514 16:38:47 5e.3 "00813_oci360_5e.3_514_compartment_orclocicompartmentpathdbarjcompttestcompttestdb.html" 16:38:49 5e.3 "00814_oci360_5e.3_514_compartment_orclocicompartmentpathdbarjcompttestcompttestdb_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:38:51 5e.3 "Per Month" 16:38:51 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:38:51 5e.3.515 16:38:53 5e.3 "00815_oci360_5e.3_515_compartment_orclocicompartmentpathdbarjcompttestcompttestnet.html" 16:38:56 5e.3 "00816_oci360_5e.3_515_compartment_orclocicompartmentpathdbarjcompttestcompttestnet_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:39:04 5e.3 "Per Month" 16:39:04 Compartment: ORCL:OCICompartmentPath=dbarj/enkitec_br, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/enkitec_br' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:39:04 5e.3.516 16:39:10 5e.3 "00817_oci360_5e.3_516_compartment_orclocicompartmentpathdbarjenkitecbr.html" 16:39:16 5e.3 "00818_oci360_5e.3_516_compartment_orclocicompartmentpathdbarjenkitecbr_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:39:19 5e.3 "Per Month" 16:39:19 Compartments - Total Costs 16:39:19 5e.3.517 16:39:20 5e.3 "00819_oci360_5e.3_517_compartments_total_costs.html" 21 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:39:22 5e.3 "Per Month" 16:39:22 Service Group: ORCL:OCIService=Block Storage, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Block Storage' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:39:22 5e.3.518 16:39:23 5e.3 "00820_oci360_5e.3_518_service_group_orclociserviceblock_storage.html" 16:39:24 5e.3 "00821_oci360_5e.3_518_service_group_orclociserviceblock_storage_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:39:27 5e.3 "Per Month" 16:39:27 Service Group: ORCL:OCIService=Compute, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Compute' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:39:27 5e.3.519 16:39:27 5e.3 "00822_oci360_5e.3_519_service_group_orclociservicecompute.html" 16:39:29 5e.3 "00823_oci360_5e.3_519_service_group_orclociservicecompute_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:39:32 5e.3 "Per Month" 16:39:32 Service Group: ORCL:OCIService=Database, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Database' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:39:32 5e.3.520 16:39:33 5e.3 "00824_oci360_5e.3_520_service_group_orclociservicedatabase.html" 16:39:35 5e.3 "00825_oci360_5e.3_520_service_group_orclociservicedatabase_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:39:40 5e.3 "Per Month" 16:39:40 Service Group: ORCL:OCIService=Object Storage, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Object Storage' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:39:40 5e.3.521 16:39:41 5e.3 "00826_oci360_5e.3_521_service_group_orclociserviceobject_storage.html" 16:39:45 5e.3 "00827_oci360_5e.3_521_service_group_orclociserviceobject_storage_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:39:45 5e.3 "Per Month" 16:39:45 Service Groups - Total Costs 16:39:45 5e.3.522 16:39:46 5e.3 "00828_oci360_5e.3_522_service_groups_total_costs.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:39:47 5e.3 "Per Month" 16:39:47 Service Name: COMPUTEBAREMETAL, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE SERVICENAME = 'COMPUTEBAREMETAL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:39:47 5e.3.523 16:39:48 5e.3 "00829_oci360_5e.3_523_service_name_computebaremetal.html" 16:39:50 5e.3 "00830_oci360_5e.3_523_service_name_computebaremetal_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:39:51 5e.3 "Per Month" 16:39:51 Service Name: DATABASEBAREMETAL, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE SERVICENAME = 'DATABASEBAREMETAL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:39:51 5e.3.524 16:39:52 5e.3 "00831_oci360_5e.3_524_service_name_databasebaremetal.html" 16:39:55 5e.3 "00832_oci360_5e.3_524_service_name_databasebaremetal_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:40:02 5e.3 "Per Month" 16:40:02 Services - Total Costs 16:40:02 5e.3.525 16:40:06 5e.3 "00833_oci360_5e.3_525_services_total_costs.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:40:14 5e.3 "Per Month" 16:40:14 Resource: Block Volumes, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_BLOCK_STORAGE_STANDARD' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:40:14 5e.3.526 16:40:17 5e.3 "00834_oci360_5e.3_526_resource_block_volumes.html" 16:40:20 5e.3 "00835_oci360_5e.3_526_resource_block_volumes_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:40:21 5e.3 "Per Month" 16:40:21 Resource: Compute Standard E2, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_COMPUTE_STANDARD_E2' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:40:21 5e.3.527 16:40:21 5e.3 "00836_oci360_5e.3_527_resource_compute_standard_e2.html" 16:40:23 5e.3 "00837_oci360_5e.3_527_resource_compute_standard_e2_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:40:24 5e.3 "Per Month" 16:40:24 Resource: Database Cloud Service - All Editions - BYOL, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_DATABASE_CLOUD_ALL_EDITION_BYOL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:40:24 5e.3.528 16:40:24 5e.3 "00838_oci360_5e.3_528_resource_database_cloud_service_all_editions_byol.html" 16:40:25 5e.3 "00839_oci360_5e.3_528_resource_database_cloud_service_all_editions_byol_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:40:26 5e.3 "Per Month" 16:40:26 Resource: Database Cloud Service - Enterprise Edition, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_DATABASE_CLOUD_ENTERPRISE_EDITION' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:40:26 5e.3.529 16:40:27 5e.3 "00840_oci360_5e.3_529_resource_database_cloud_service_enterprise_edition.html" 16:40:28 5e.3 "00841_oci360_5e.3_529_resource_database_cloud_service_enterprise_edition_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:40:30 5e.3 "Per Month" 16:40:30 Resource: Object Storage - Requests, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_OBJECT_STORAGE_REQUEST_TIERED' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:40:30 5e.3.530 16:40:31 5e.3 "00842_oci360_5e.3_530_resource_object_storage_requests.html" 16:40:32 5e.3 "00843_oci360_5e.3_530_resource_object_storage_requests_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:40:35 5e.3 "Per Month" 16:40:35 Resource: Block Volume Performance Units, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_STANDARD_PERFORMANCE' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:40:35 5e.3.531 16:40:36 5e.3 "00844_oci360_5e.3_531_resource_block_volume_performance_units.html" 16:40:40 5e.3 "00845_oci360_5e.3_531_resource_block_volume_performance_units_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:40:41 5e.3 "Per Month" 16:40:41 Resource: Block Volume Storage, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_STANDARD_STORAGE' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:40:41 5e.3.532 16:40:43 5e.3 "00846_oci360_5e.3_532_resource_block_volume_storage.html" 16:40:44 5e.3 "00847_oci360_5e.3_532_resource_block_volume_storage_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:40:47 5e.3 "Per Month" 16:40:47 Resources - Total Costs 16:40:47 5e.3.533 16:40:48 5e.3 "00848_oci360_5e.3_533_resources_total_costs.html" 7 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:40:54 5e.3 "Per Month" 16:40:54 Total per month, between 2020-04-19 and 2020-06-29 WITH t1 AS ( /* Cost of the resource group by ENDTIME */ SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE 1 = 1 GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( /* Min and Max range of the costs */ select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE, rank() over (order by TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')) seq FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON + 3), tcycle AS ( SELECT STARTDATE, ENDDATE,SEQ FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE,RANK() OVER (ORDER BY ENDDATE ASC)+ LAST SEQ FROM TCYCLE_GAPS, (SELECT MAX(SEQ) LAST FROM TCYCLE_ACCOUNT) ), result AS ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') bar_value, CASE WHEN STARTDATE > min AND ENDDATE < max THEN 'Y' ELSE 'N' END completed /* Check for incomplete periods */ from t1, tcycle, trange WHERE t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < tcycle.ENDDATE /* The Billing end time must be inside the range until the computed hour */ AND (tcycle.STARTDATE between trange.min and trange.max OR tcycle.ENDDATE between trange.min and trange.max) group by seq, tcycle.STARTDATE, tcycle.ENDDATE, min, max order by seq ), statistics as ( select REGR_SLOPE(bar_value,snap_id) slope, REGR_INTERCEPT(bar_value,snap_id) intercept from result where completed = 'Y' /* Don't consider incomplete periods for calc */ ), result_next3 as ( select seq snap_id, TO_CHAR(ENDDATE, 'YYYY-MM-DD') bar_name, TO_CHAR(STARTDATE, 'YYYY-MM-DD HH24:MI') || ' - ' || TO_CHAR(ENDDATE, 'YYYY-MM-DD HH24:MI') bar_desc, TO_CHAR(NVL(CEIL((slope*seq+intercept)*100)/100,0),'99999990D00') bar_value /* Linear Regression calculate. */ from tcycle, trange, statistics WHERE (tcycle.STARTDATE >= trange.max OR tcycle.ENDDATE >= trange.max) and slope is not null and intercept is not null group by seq, tcycle.STARTDATE, tcycle.ENDDATE, slope, intercept order by seq ), result_final as ( select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'opacity: 0.6' colour from result where completed = 'Y' union all select snap_id, bar_name, bar_value, 'USD ' || bar_value bar_desc, 'color: #703593; opacity: 0.6' colour from result_next3 where rownum <= 3 ) select bar_name, bar_value, colour, bar_desc from result_final order by snap_id 16:40:54 5e.3.534 16:40:56 5e.3 "00849_oci360_5e.3_534_total_per_month.html" 16:41:00 5e.3 "00850_oci360_5e.3_534_total_per_month_bar_chart.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:41:10 5e.4 "Per Cycle" 16:41:10 Tag: Oracle-Tags:CreatedBy=oracleidentitycloudservice/user4@acme.com, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'Oracle-Tags:CreatedBy=oracleidentitycloudservice/user4@acme.com' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:41:10 5e.4.535 16:41:11 5e.4 "00851_oci360_5e.4_535_tag_oracletagscreatedbyoracleidentitycloudservicerodrigoaraujojorgegmailcom.html" 16:41:13 5e.4 "00852_oci360_5e.4_535_tag_oracletagscreatedbyoracleidentitycloudservicerodrigoaraujojorgegmailcom_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:41:15 5e.4 "Per Cycle" 16:41:15 Tag: Oracle-Tags:CreatedBy=user4@acme.com, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'Oracle-Tags:CreatedBy=user4@acme.com' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:41:15 5e.4.536 16:41:16 5e.4 "00853_oci360_5e.4_536_tag_oracletagscreatedbyrodrigoaraujojorgegmailcom.html" 16:41:17 5e.4 "00854_oci360_5e.4_536_tag_oracletagscreatedbyrodrigoaraujojorgegmailcom_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:41:19 5e.4 "Per Cycle" 16:41:19 Custom Tags - Total Costs 16:41:19 5e.4.537 16:41:21 5e.4 "00855_oci360_5e.4_537_custom_tags_total_costs.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:41:22 5e.4 "Per Cycle" 16:41:22 Compartment: ORCL:OCICompartmentPath=dbarj, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:41:22 5e.4.538 16:41:23 5e.4 "00856_oci360_5e.4_538_compartment_orclocicompartmentpathdbarj.html" 16:41:25 5e.4 "00857_oci360_5e.4_538_compartment_orclocicompartmentpathdbarj_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:41:28 5e.4 "Per Cycle" 16:41:28 Compartment: ORCL:OCICompartmentPath=dbarj/Ops, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:41:28 5e.4.539 16:41:30 5e.4 "00858_oci360_5e.4_539_compartment_orclocicompartmentpathdbarjops.html" 16:41:34 5e.4 "00859_oci360_5e.4_539_compartment_orclocicompartmentpathdbarjops_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:41:37 5e.4 "Per Cycle" 16:41:37 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Dev, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Dev' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:41:37 5e.4.540 16:41:38 5e.4 "00860_oci360_5e.4_540_compartment_orclocicompartmentpathdbarjopsdev.html" 16:41:40 5e.4 "00861_oci360_5e.4_540_compartment_orclocicompartmentpathdbarjopsdev_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:41:44 5e.4 "Per Cycle" 16:41:44 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Dev/A, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Dev/A' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:41:44 5e.4.541 16:41:47 5e.4 "00862_oci360_5e.4_541_compartment_orclocicompartmentpathdbarjopsdeva.html" 16:41:53 5e.4 "00863_oci360_5e.4_541_compartment_orclocicompartmentpathdbarjopsdeva_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:41:58 5e.4 "Per Cycle" 16:41:58 Compartment: ORCL:OCICompartmentPath=dbarj/Ops/Test, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Ops/Test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:41:58 5e.4.542 16:42:00 5e.4 "00864_oci360_5e.4_542_compartment_orclocicompartmentpathdbarjopstest.html" 16:42:03 5e.4 "00865_oci360_5e.4_542_compartment_orclocicompartmentpathdbarjopstest_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:42:07 5e.4 "Per Cycle" 16:42:07 Compartment: ORCL:OCICompartmentPath=dbarj/Test, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/Test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:42:07 5e.4.543 16:42:09 5e.4 "00866_oci360_5e.4_543_compartment_orclocicompartmentpathdbarjtest.html" 16:42:14 5e.4 "00867_oci360_5e.4_543_compartment_orclocicompartmentpathdbarjtest_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:42:16 5e.4 "Per Cycle" 16:42:16 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:42:16 5e.4.544 16:42:18 5e.4 "00868_oci360_5e.4_544_compartment_orclocicompartmentpathdbarjcomptdev.html" 16:42:24 5e.4 "00869_oci360_5e.4_544_compartment_orclocicompartmentpathdbarjcomptdev_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:42:28 5e.4 "Per Cycle" 16:42:28 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_app, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:42:28 5e.4.545 16:42:30 5e.4 "00870_oci360_5e.4_545_compartment_orclocicompartmentpathdbarjcomptdevcomptdevapp.html" 16:42:30 5e.4 "00871_oci360_5e.4_545_compartment_orclocicompartmentpathdbarjcomptdevcomptdevapp_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:42:35 5e.4 "Per Cycle" 16:42:35 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_db, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:42:35 5e.4.546 16:42:37 5e.4 "00872_oci360_5e.4_546_compartment_orclocicompartmentpathdbarjcomptdevcomptdevdb.html" 16:42:41 5e.4 "00873_oci360_5e.4_546_compartment_orclocicompartmentpathdbarjcomptdevcomptdevdb_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:42:43 5e.4 "Per Cycle" 16:42:43 Compartment: ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_dev/compt_dev_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:42:43 5e.4.547 16:42:43 5e.4 "00874_oci360_5e.4_547_compartment_orclocicompartmentpathdbarjcomptdevcomptdevnet.html" 16:42:44 5e.4 "00875_oci360_5e.4_547_compartment_orclocicompartmentpathdbarjcomptdevcomptdevnet_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:42:48 5e.4 "Per Cycle" 16:42:48 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:42:48 5e.4.548 16:42:50 5e.4 "00876_oci360_5e.4_548_compartment_orclocicompartmentpathdbarjcomptprod.html" 16:42:55 5e.4 "00877_oci360_5e.4_548_compartment_orclocicompartmentpathdbarjcomptprod_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:42:58 5e.4 "Per Cycle" 16:42:58 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_app, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:42:58 5e.4.549 16:43:01 5e.4 "00878_oci360_5e.4_549_compartment_orclocicompartmentpathdbarjcomptprodcomptprodapp.html" 16:43:08 5e.4 "00879_oci360_5e.4_549_compartment_orclocicompartmentpathdbarjcomptprodcomptprodapp_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:43:12 5e.4 "Per Cycle" 16:43:12 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_db, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:43:12 5e.4.550 16:43:14 5e.4 "00880_oci360_5e.4_550_compartment_orclocicompartmentpathdbarjcomptprodcomptproddb.html" 16:43:19 5e.4 "00881_oci360_5e.4_550_compartment_orclocicompartmentpathdbarjcomptprodcomptproddb_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:43:22 5e.4 "Per Cycle" 16:43:22 Compartment: ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_prod/compt_prod_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:43:22 5e.4.551 16:43:23 5e.4 "00882_oci360_5e.4_551_compartment_orclocicompartmentpathdbarjcomptprodcomptprodnet.html" 16:43:24 5e.4 "00883_oci360_5e.4_551_compartment_orclocicompartmentpathdbarjcomptprodcomptprodnet_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:43:29 5e.4 "Per Cycle" 16:43:29 Compartment: ORCL:OCICompartmentPath=dbarj/compt_ss, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_ss' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:43:29 5e.4.552 16:43:30 5e.4 "00884_oci360_5e.4_552_compartment_orclocicompartmentpathdbarjcomptss.html" 16:43:35 5e.4 "00885_oci360_5e.4_552_compartment_orclocicompartmentpathdbarjcomptss_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:43:40 5e.4 "Per Cycle" 16:43:40 Compartment: ORCL:OCICompartmentPath=dbarj/compt_ss/compt_ss_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_ss/compt_ss_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:43:40 5e.4.553 16:43:42 5e.4 "00886_oci360_5e.4_553_compartment_orclocicompartmentpathdbarjcomptsscomptssnet.html" 16:43:48 5e.4 "00887_oci360_5e.4_553_compartment_orclocicompartmentpathdbarjcomptsscomptssnet_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:43:52 5e.4 "Per Cycle" 16:43:52 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:43:52 5e.4.554 16:43:55 5e.4 "00888_oci360_5e.4_554_compartment_orclocicompartmentpathdbarjcompttest.html" 16:44:01 5e.4 "00889_oci360_5e.4_554_compartment_orclocicompartmentpathdbarjcompttest_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:44:04 5e.4 "Per Cycle" 16:44:04 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_app, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_app' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:44:04 5e.4.555 16:44:09 5e.4 "00890_oci360_5e.4_555_compartment_orclocicompartmentpathdbarjcompttestcompttestapp.html" 16:44:15 5e.4 "00891_oci360_5e.4_555_compartment_orclocicompartmentpathdbarjcompttestcompttestapp_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:44:23 5e.4 "Per Cycle" 16:44:23 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_db, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_db' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:44:23 5e.4.556 16:44:24 5e.4 "00892_oci360_5e.4_556_compartment_orclocicompartmentpathdbarjcompttestcompttestdb.html" 16:44:28 5e.4 "00893_oci360_5e.4_556_compartment_orclocicompartmentpathdbarjcompttestcompttestdb_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:44:39 5e.4 "Per Cycle" 16:44:39 Compartment: ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_net, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/compt_test/compt_test_net' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:44:39 5e.4.557 16:44:40 5e.4 "00894_oci360_5e.4_557_compartment_orclocicompartmentpathdbarjcompttestcompttestnet.html" 16:44:44 5e.4 "00895_oci360_5e.4_557_compartment_orclocicompartmentpathdbarjcompttestcompttestnet_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:44:49 5e.4 "Per Cycle" 16:44:49 Compartment: ORCL:OCICompartmentPath=dbarj/enkitec_br, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCICompartmentPath=dbarj/enkitec_br' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:44:49 5e.4.558 16:44:50 5e.4 "00896_oci360_5e.4_558_compartment_orclocicompartmentpathdbarjenkitecbr.html" 16:44:54 5e.4 "00897_oci360_5e.4_558_compartment_orclocicompartmentpathdbarjenkitecbr_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:45:01 5e.4 "Per Cycle" 16:45:01 Compartments - Total Costs 16:45:01 5e.4.559 16:45:05 5e.4 "00898_oci360_5e.4_559_compartments_total_costs.html" 21 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:45:08 5e.4 "Per Cycle" 16:45:08 Service Group: ORCL:OCIService=Block Storage, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Block Storage' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:45:08 5e.4.560 16:45:11 5e.4 "00899_oci360_5e.4_560_service_group_orclociserviceblock_storage.html" 16:45:14 5e.4 "00900_oci360_5e.4_560_service_group_orclociserviceblock_storage_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:45:19 5e.4 "Per Cycle" 16:45:19 Service Group: ORCL:OCIService=Compute, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Compute' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:45:19 5e.4.561 16:45:21 5e.4 "00901_oci360_5e.4_561_service_group_orclociservicecompute.html" 16:45:24 5e.4 "00902_oci360_5e.4_561_service_group_orclociservicecompute_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:45:29 5e.4 "Per Cycle" 16:45:29 Service Group: ORCL:OCIService=Database, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Database' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:45:29 5e.4.562 16:45:30 5e.4 "00903_oci360_5e.4_562_service_group_orclociservicedatabase.html" 16:45:34 5e.4 "00904_oci360_5e.4_562_service_group_orclociservicedatabase_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:45:37 5e.4 "Per Cycle" 16:45:37 Service Group: ORCL:OCIService=Object Storage, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS_TAGGED_DAILY WHERE TAG = 'ORCL:OCIService=Object Storage' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS_TAGGED_DAILY ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:45:37 5e.4.563 16:45:38 5e.4 "00905_oci360_5e.4_563_service_group_orclociserviceobject_storage.html" 16:45:44 5e.4 "00906_oci360_5e.4_563_service_group_orclociserviceobject_storage_line_chart.html" 71 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:45:48 5e.4 "Per Cycle" 16:45:48 Service Groups - Total Costs 16:45:48 5e.4.564 16:45:52 5e.4 "00907_oci360_5e.4_564_service_groups_total_costs.html" 4 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:45:58 5e.4 "Per Cycle" 16:45:58 Service Name: COMPUTEBAREMETAL, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE SERVICENAME = 'COMPUTEBAREMETAL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:45:58 5e.4.565 16:46:01 5e.4 "00908_oci360_5e.4_565_service_name_computebaremetal.html" 16:46:08 5e.4 "00909_oci360_5e.4_565_service_name_computebaremetal_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:46:12 5e.4 "Per Cycle" 16:46:12 Service Name: DATABASEBAREMETAL, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE SERVICENAME = 'DATABASEBAREMETAL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:46:12 5e.4.566 16:46:13 5e.4 "00910_oci360_5e.4_566_service_name_databasebaremetal.html" 16:46:14 5e.4 "00911_oci360_5e.4_566_service_name_databasebaremetal_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:46:14 5e.4 "Per Cycle" 16:46:14 Services - Total Costs 16:46:14 5e.4.567 16:46:17 5e.4 "00912_oci360_5e.4_567_services_total_costs.html" 2 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:46:22 5e.4 "Per Cycle" 16:46:22 Resource: Block Volumes, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_BLOCK_STORAGE_STANDARD' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:46:22 5e.4.568 16:46:23 5e.4 "00913_oci360_5e.4_568_resource_block_volumes.html" 16:46:27 5e.4 "00914_oci360_5e.4_568_resource_block_volumes_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:46:35 5e.4 "Per Cycle" 16:46:35 Resource: Compute Standard E2, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_COMPUTE_STANDARD_E2' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:46:35 5e.4.569 16:46:37 5e.4 "00915_oci360_5e.4_569_resource_compute_standard_e2.html" 16:46:40 5e.4 "00916_oci360_5e.4_569_resource_compute_standard_e2_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:46:44 5e.4 "Per Cycle" 16:46:44 Resource: Database Cloud Service - All Editions - BYOL, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_DATABASE_CLOUD_ALL_EDITION_BYOL' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:46:44 5e.4.570 16:46:45 5e.4 "00917_oci360_5e.4_570_resource_database_cloud_service_all_editions_byol.html" 16:46:52 5e.4 "00918_oci360_5e.4_570_resource_database_cloud_service_all_editions_byol_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:46:53 5e.4 "Per Cycle" 16:46:53 Resource: Database Cloud Service - Enterprise Edition, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_DATABASE_CLOUD_ENTERPRISE_EDITION' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:46:53 5e.4.571 16:46:55 5e.4 "00919_oci360_5e.4_571_resource_database_cloud_service_enterprise_edition.html" 16:47:03 5e.4 "00920_oci360_5e.4_571_resource_database_cloud_service_enterprise_edition_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:47:06 5e.4 "Per Cycle" 16:47:06 Resource: Object Storage - Requests, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_OBJECT_STORAGE_REQUEST_TIERED' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:47:06 5e.4.572 16:47:07 5e.4 "00921_oci360_5e.4_572_resource_object_storage_requests.html" 16:47:11 5e.4 "00922_oci360_5e.4_572_resource_object_storage_requests_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:47:14 5e.4 "Per Cycle" 16:47:14 Resource: Block Volume Performance Units, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_STANDARD_PERFORMANCE' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:47:14 5e.4.573 16:47:16 5e.4 "00923_oci360_5e.4_573_resource_block_volume_performance_units.html" 16:47:20 5e.4 "00924_oci360_5e.4_573_resource_block_volume_performance_units_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:47:25 5e.4 "Per Cycle" 16:47:25 Resource: Block Volume Storage, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE RESOURCENAME = 'PIC_STANDARD_STORAGE' GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:47:25 5e.4.574 16:47:27 5e.4 "00925_oci360_5e.4_574_resource_block_volume_storage.html" 16:47:31 5e.4 "00926_oci360_5e.4_574_resource_block_volume_storage_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:47:35 5e.4 "Per Cycle" 16:47:35 Resources - Total Costs 16:47:35 5e.4.575 16:47:38 5e.4 "00927_oci360_5e.4_575_resources_total_costs.html" 7 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:47:43 5e.4 "Per Cycle" 16:47:43 Total per cycle, between 2020-04-19 and 2020-06-29 WITH t1 AS ( SELECT SUM(COSTS$COMPUTEDAMOUNT) COMPUTEDAMOUNT, TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDTIMEUTC FROM OCI360_USAGECOSTS WHERE 1 = 1 GROUP BY TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ), trange as ( select trunc(min(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') min, trunc(max(TO_TIMESTAMP(ENDTIMEUTC,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM')),'HH24') max FROM OCI360_USAGECOSTS ), tcycle_account AS ( SELECT /*+ materialize */ TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$STARTDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') STARTDATE, TO_TIMESTAMP(PURCHASE$PURCHASEDRESOURCES$ENDDATE,'YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM') ENDDATE FROM OCI360_ACCOUNTDETAILS, trange WHERE PURCHASE$ID is not null AND PURCHASE$PURCHASEDRESOURCES$NAME = 'CLOUD_CREDIT_AMOUNT' ORDER BY STARTDATE ), tcycle_gaps AS ( SELECT CAST(ADD_MONTHS(LAST_START,ROWNUM) AS TIMESTAMP) STARTDATE, CAST(ADD_MONTHS(LAST_END,ROWNUM) AS TIMESTAMP) ENDDATE FROM (SELECT MAX(STARTDATE) LAST_START, MAX(ENDDATE) LAST_END, CEIL(MONTHS_BETWEEN(TRANGE.MAX,MAX(ENDDATE))) NUMMON FROM TCYCLE_ACCOUNT, TRANGE GROUP BY TRANGE.MAX) WHERE NUMMON > 0 CONNECT BY LEVEL <= NUMMON), tcycle AS ( SELECT STARTDATE, ENDDATE FROM TCYCLE_ACCOUNT UNION ALL SELECT STARTDATE, ENDDATE FROM TCYCLE_GAPS ), alldays as ( /* Will generate all days between Min and Max Start Time */ SELECT trunc(trange.min,'DD') + (rownum - 1) vdate, rownum seq FROM trange WHERE trange.min + (rownum - 1) <= trange.max - 1 /* Skip last entry as may be incomplete. */ CONNECT BY LEVEL <= (trange.max - trange.min) + 1 ) select seq snap_id, TO_CHAR(vdate, 'YYYY-MM-DD HH24:MI') begin_time, TO_CHAR(vdate+1, 'YYYY-MM-DD HH24:MI') end_time, TO_CHAR(NVL(CEIL(SUM(COMPUTEDAMOUNT)*100)/100,0),'99999990D00') line1, 0 dummy_02, 0 dummy_03, 0 dummy_04, 0 dummy_05, 0 dummy_06, 0 dummy_07, 0 dummy_08, 0 dummy_09, 0 dummy_10, 0 dummy_11, 0 dummy_12, 0 dummy_13, 0 dummy_14, 0 dummy_15 from t1, tcycle, alldays WHERE vdate between tcycle.STARTDATE AND tcycle.ENDDATE /* For each hour frame I get the billing period range */ AND t1.ENDTIMEUTC(+) >= tcycle.STARTDATE AND t1.ENDTIMEUTC(+) < vdate+1 /* The Billing end time must be inside the range until the computed hour */ group by seq, vdate order by seq 16:47:43 5e.4.576 16:47:44 5e.4 "00928_oci360_5e.4_576_total_per_cycle.html" 16:47:48 5e.4 "00929_oci360_5e.4_576_total_per_cycle_line_chart.html" 70 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:47:57 6a "Database Services" 16:47:57 Databases SELECT t1.* FROM OCI360_DATABASES t1 16:47:57 6a.577 16:47:58 6a "00930_oci360_6a_577_databases.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:48:03 6a "Database Services" 16:48:03 Database Systems SELECT distinct ID, SHAPE, DOMAIN, VERSION, HOSTNAME, SUBNET_ID, NODE_COUNT, CLUSTER_NAME, DISPLAY_NAME, TIME_CREATED, LICENSE_MODEL, LISTENER_PORT, COMPARTMENT_ID, CPU_CORE_COUNT, DISK_REDUNDANCY, LIFECYCLE_STATE, BACKUP_SUBNET_ID, DATABASE_EDITION, SPARSE_DISKGROUP, LIFECYCLE_DETAILS, SCAN_DNS_RECORD_ID, AVAILABILITY_DOMAIN, DATA_STORAGE_PERCENTAGE, RECO_STORAGE_SIZE_IN_GB, DATA_STORAGE_SIZE_IN_GBS, LAST_PATCH_HISTORY_ENTRY_ID FROM OCI360_DB_SYSTEMS t1 16:48:03 6a.578 16:48:05 6a "00931_oci360_6a_578_database_systems.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:48:09 6a "Database Services" 16:48:09 Database System VIP IDs SELECT ID, CLUSTER_NAME, DISPLAY_NAME, VIP_IDS FROM OCI360_DB_SYSTEMS t1 WHERE VIP_IDS is not null 16:48:09 6a.579 16:48:12 6a "00932_oci360_6a_579_database_system_vip_ids.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:48:14 6a "Database Services" 16:48:14 Database Systems Scan IDs SELECT ID, CLUSTER_NAME, DISPLAY_NAME, SCAN_IP_IDS FROM OCI360_DB_SYSTEMS t1 WHERE SCAN_IP_IDS is not null 16:48:14 6a.580 16:48:15 6a "00933_oci360_6a_580_database_systems_scan_ids.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:48:20 6a "Database Services" 16:48:20 Database Systems SSH Keys SELECT ID, CLUSTER_NAME, DISPLAY_NAME, SSH_PUBLIC_KEYS FROM OCI360_DB_SYSTEMS t1 WHERE SSH_PUBLIC_KEYS is not null 16:48:20 6a.581 16:48:22 6a "00934_oci360_6a_581_database_systems_ssh_keys.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:48:29 6a "Database Services" 16:48:29 Database System Shapes SELECT t1.* FROM OCI360_DB_SYSTEM_SHAPES t1 ORDER BY 1 16:48:29 6a.582 16:48:31 6a "00935_oci360_6a_582_database_system_shapes.html" 93 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:48:37 6a "Database Services" 16:48:37 Database Versions SELECT t1.* FROM OCI360_DB_VERSIONS t1 16:48:37 6a.583 16:48:38 6a "00936_oci360_6a_583_database_versions.html" 105 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:48:43 6a "Database Services" 16:48:43 Database Nodes SELECT t1.* FROM OCI360_DB_NODES t1 16:48:43 6a.584 16:48:44 6a "00937_oci360_6a_584_database_nodes.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:48:49 6a "Database Services" 16:48:49 Database Backups SELECT t1.* FROM OCI360_DB_BACKUPS t1 16:48:49 6a.585 16:48:50 6a "00938_oci360_6a_585_database_backups.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:48:53 6a "Database Services" 16:48:53 Database Backup Jobs SELECT t1.* FROM OCI360_DB_BACKUP_JOBS t1 16:48:53 6a.586 16:48:54 6a "00939_oci360_6a_586_database_backup_jobs.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:48:59 6a "Database Services" 16:48:59 Database Dataguard Associations SELECT t1.* FROM OCI360_DATAGUARD_ASSOC t1 16:48:59 6a.587 16:49:01 6a "00940_oci360_6a_587_database_dataguard_associations.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:49:07 6a "Database Services" 16:49:07 Patches by Database SELECT t1.* FROM OCI360_DB_PATCH_BYDB t1 16:49:07 6a.588 16:49:09 6a "00941_oci360_6a_588_patches_by_database.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:49:12 6a "Database Services" 16:49:12 Patches by Database History SELECT t1.* FROM OCI360_DB_PATCH_BYDB_HIST t1 16:49:12 6a.589 16:49:13 6a "00942_oci360_6a_589_patches_by_database_history.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:49:19 6a "Database Services" 16:49:19 Patches by System SELECT t1.* FROM OCI360_DB_PATCH_BYDS t1 16:49:19 6a.590 16:49:20 6a "00943_oci360_6a_590_patches_by_system.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:49:26 6a "Database Services" 16:49:26 Patches by System History SELECT t1.* FROM OCI360_DB_PATCH_BYDS_HIST t1 16:49:26 6a.591 16:49:28 6a "00944_oci360_6a_591_patches_by_system_history.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:49:37 6a "Database Services" 16:49:37 Database Networks SELECT t1.CLUSTER_NAME, t1.DISPLAY_NAME, t1.hostname SYSTEM_HOSTNAME, t1.TIME_CREATED, t1.LIFECYCLE_STATE SYSTEM_LIFECYCLE_STATE, t1.SHAPE, 'BACKUP' IP_TYPE, t3.ip_address, t2.hostname NODE_HOSTNAME, t2.LIFECYCLE_STATE NODE_LIFECYCLE_STATE FROM (select distinct id, cluster_name, display_name, hostname, time_created, lifecycle_state, shape FROM OCI360_DB_SYSTEMS) t1, OCI360_DB_NODES t2, OCI360_PRIVATEIPS t3 where t1.id=t2.DB_SYSTEM_ID and t2.BACKUP_VNIC_ID = t3.VNIC_ID and t3.IS_PRIMARY='true' UNION ALL SELECT t1.CLUSTER_NAME, t1.DISPLAY_NAME, t1.hostname SYSTEM_HOSTNAME, t1.TIME_CREATED, t1.LIFECYCLE_STATE SYSTEM_LIFECYCLE_STATE, t1.SHAPE, 'PUBLIC' IP_TYPE, t3.ip_address, t2.hostname NODE_HOSTNAME, t2.LIFECYCLE_STATE NODE_LIFECYCLE_STATE FROM (select distinct id, cluster_name, display_name, hostname, time_created, lifecycle_state, shape FROM OCI360_DB_SYSTEMS) t1, OCI360_DB_NODES t2, OCI360_PRIVATEIPS t3 where t1.id=t2.DB_SYSTEM_ID and t2.VNIC_ID=t3.VNIC_ID and t3.IS_PRIMARY='true' UNION ALL SELECT t1.CLUSTER_NAME, t1.DISPLAY_NAME, t1.hostname SYSTEM_HOSTNAME, t1.TIME_CREATED, t1.LIFECYCLE_STATE SYSTEM_LIFECYCLE_STATE, t1.SHAPE, 'VIP' IP_TYPE, t3.ip_address, t2.hostname NODE_HOSTNAME, t2.LIFECYCLE_STATE NODE_LIFECYCLE_STATE FROM (select distinct id, vip_ids, cluster_name, display_name, hostname, time_created, lifecycle_state, shape FROM OCI360_DB_SYSTEMS) t1, OCI360_DB_NODES t2, OCI360_PRIVATEIPS t3 where t1.id=t2.DB_SYSTEM_ID and t2.VNIC_ID=t3.VNIC_ID and t1.vip_ids like '%' || t3.ID || '%' UNION ALL SELECT t1.CLUSTER_NAME, t1.DISPLAY_NAME, t1.hostname SYSTEM_HOSTNAME, t1.TIME_CREATED, t1.LIFECYCLE_STATE SYSTEM_LIFECYCLE_STATE, t1.SHAPE, 'SCAN' IP_TYPE, t3.ip_address, t2.hostname NODE_HOSTNAME, t2.LIFECYCLE_STATE NODE_LIFECYCLE_STATE FROM (select distinct id, scan_ip_ids, cluster_name, display_name, hostname, time_created, lifecycle_state, shape FROM OCI360_DB_SYSTEMS) t1, OCI360_DB_NODES t2, OCI360_PRIVATEIPS t3 where t1.id=t2.DB_SYSTEM_ID and t2.VNIC_ID=t3.VNIC_ID and t1.scan_ip_ids like '%' || t3.ID || '%' ORDER BY CLUSTER_NAME,IP_TYPE,NODE_HOSTNAME 16:49:37 6a.592 16:49:39 6a "00945_oci360_6a_592_database_networks.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:49:45 6b "Database Estimations" 16:49:45 Database Estimated Costs WITH DB_SRV AS ( SELECT distinct ID, CLUSTER_NAME, DISPLAY_NAME, LICENSE_MODEL, SHAPE, CPU_CORE_COUNT, DATABASE_EDITION, SUBSTR(SHAPE,1,INSTR(SHAPE,'.',1,1)-1) SHAPE_TYPE, SUBSTR(SHAPE,INSTR(SHAPE,'.',-1,1)+1,LENGTH(SHAPE)-INSTR(SHAPE,'.',-1,1)) SHAPE_MAX_OCPUS FROM OCI360_DB_SYSTEMS X WHERE SHAPE LIKE 'VM.%' OR SHAPE LIKE 'BM.%' ), DB_COST AS ( SELECT /*+ materialize */ INST_TYPE, PAYG, MF, SUBSTR(INST_TYPE,1,INSTR(INST_TYPE,'.',1,1)-1) DB_VERS, LIC_TYPE DB_LIC_TYPE, SUBSTR(INST_TYPE,INSTR(INST_TYPE,'.',1,1)+1) DB_OCPUS_INCL FROM "OCI360_PRICING" WHERE SUBJECT = 'DATABASE' AND SUBSTR(INST_TYPE,INSTR(INST_TYPE,'.',1,1)+1) != 'OCPU' ), DB_OCPU AS ( SELECT /*+ materialize */ INST_TYPE, PAYG, MF, SUBSTR(INST_TYPE,1,INSTR(INST_TYPE,'.',1,1)-1) DB_VERS, LIC_TYPE DB_LIC_TYPE FROM "OCI360_PRICING" WHERE SUBJECT = 'DATABASE' AND INSTR(INST_TYPE,'.',1,2) = 0 AND SUBSTR(INST_TYPE,INSTR(INST_TYPE,'.',1,1)+1) = 'OCPU' ) SELECT t1.CLUSTER_NAME, t1.DISPLAY_NAME, t1.SHAPE_TYPE, t1.CPU_CORE_COUNT, t1.LICENSE_MODEL, t1.SHAPE, (t1.CPU_CORE_COUNT - t2.DB_OCPUS_INCL) EXTRA_USED_OCPUS, t1.SHAPE_MAX_OCPUS MAX_OCPUS, t1.DATABASE_EDITION, t1.ID, ROUND(T2.MF * 24 * 30,2) "Database - US$ Cost per month", ROUND((t1.CPU_CORE_COUNT - t2.DB_OCPUS_INCL) * T3.MF * 24 * 30,2) "Extra CPU - US$ Cost per month", ROUND((T2.MF + (t1.CPU_CORE_COUNT - t2.DB_OCPUS_INCL) * T3.MF ) * 24 * 30,2) "Total - US$ Cost per month" FROM DB_SRV t1, DB_COST t2, DB_OCPU t3 WHERE t1.SHAPE_TYPE = t2.DB_VERS (+) AND DECODE(t1.LICENSE_MODEL,'LICENSE_INCLUDED',t1.DATABASE_EDITION,t1.LICENSE_MODEL) = t2.DB_LIC_TYPE (+) AND t1.SHAPE_TYPE = t3.DB_VERS (+) AND DECODE(t1.LICENSE_MODEL,'LICENSE_INCLUDED',t1.DATABASE_EDITION,t1.LICENSE_MODEL) = t3.DB_LIC_TYPE (+) 16:49:45 6b.593 16:49:47 6b "00946_oci360_6b_593_database_estimated_costs.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:49:51 6b "Database Estimations" 16:49:51 Exadata Estimated Costs WITH EXA_SRV AS ( SELECT distinct ID, CLUSTER_NAME, DISPLAY_NAME, LICENSE_MODEL, SHAPE, CPU_CORE_COUNT, DATABASE_EDITION, SUBSTR(SHAPE,INSTR(SHAPE,'.',1,1)+1,INSTR(SHAPE,'.',1,2)-INSTR(SHAPE,'.',1,1)-1) EXA_TYPE, SUBSTR(SHAPE,INSTR(SHAPE,'.',1,2)+1,LENGTH(SHAPE)-INSTR(SHAPE,'.',1,2)) EXA_MAX_OCPUS FROM OCI360_DB_SYSTEMS X WHERE SHAPE LIKE 'Exadata.%' ), EXA AS ( SELECT ID, CLUSTER_NAME, DISPLAY_NAME, LICENSE_MODEL, SHAPE, CPU_CORE_COUNT, DATABASE_EDITION, EXA_MAX_OCPUS, UPPER(SUBSTR(EXA_TYPE,1,LENGTH(EXA_TYPE)-1)) EXA_SIZE, SUBSTR(EXA_TYPE,LENGTH(EXA_TYPE),1) EXA_VERS FROM EXA_SRV ), EXA_COST AS ( SELECT /*+ materialize */ INST_TYPE, PAYG, MF, SUBSTR(INST_TYPE,1,INSTR(INST_TYPE,'.',1,1)-1) EXA_VERS, SUBSTR(INST_TYPE,INSTR(INST_TYPE,'.',1,1)+1,INSTR(INST_TYPE,'.',1,2)-INSTR(INST_TYPE,'.',1,1)-1) EXA_SIZE, LIC_TYPE EXA_LIC_TYPE, SUBSTR(INST_TYPE,INSTR(INST_TYPE,'.',1,2)+1) EXA_OCPUS_INCL FROM "OCI360_PRICING" WHERE SUBJECT = 'EXADATA' AND INSTR(INST_TYPE,'.',1,2) != 0 ), EXA_OCPU AS ( SELECT /*+ materialize */ INST_TYPE, PAYG, MF, SUBSTR(INST_TYPE,1,INSTR(INST_TYPE,'.',1,1)-1) EXA_VERS, LIC_TYPE EXA_LIC_TYPE FROM "OCI360_PRICING" WHERE SUBJECT = 'EXADATA' AND INSTR(INST_TYPE,'.',1,2) = 0 AND SUBSTR(INST_TYPE,INSTR(INST_TYPE,'.',1,1)+1) = 'OCPU' ) SELECT t1.CLUSTER_NAME, t1.DISPLAY_NAME, t2.EXA_VERS, t1.EXA_SIZE, t1.CPU_CORE_COUNT, t1.LICENSE_MODEL, t1.SHAPE, (t1.CPU_CORE_COUNT - t2.EXA_OCPUS_INCL) EXTRA_USED_OCPUS, t1.EXA_MAX_OCPUS MAX_OCPUS, t1.DATABASE_EDITION, t1.ID, ROUND(T2.MF * 24 * 30,2) "Exadata - US$ Cost per month", ROUND((t1.CPU_CORE_COUNT - t2.EXA_OCPUS_INCL) * T3.MF * 24 * 30,2) "Extra CPU - US$ Cost per month", ROUND((T2.MF + (t1.CPU_CORE_COUNT - t2.EXA_OCPUS_INCL) * T3.MF ) * 24 * 30,2) "Total - US$ Cost per month" FROM EXA t1, EXA_COST t2, EXA_OCPU t3 WHERE DECODE(t1.EXA_VERS,1,'X6',2,'X7') = t2.EXA_VERS (+) AND DECODE(t1.LICENSE_MODEL,'LICENSE_INCLUDED','LIC','BYOL') = t2.EXA_LIC_TYPE (+) AND DECODE(t1.EXA_SIZE,'QUARTER','QR','HALF','HR','FULL','FR') = T2.EXA_SIZE (+) AND t2.EXA_VERS = t3.EXA_VERS (+) AND t2.EXA_LIC_TYPE = t3.EXA_LIC_TYPE (+) 16:49:51 6b.594 16:49:53 6b "00947_oci360_6b_594_exadata_estimated_costs.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:49:57 6b "Database Estimations" 16:49:57 Exadata Infrastructure SELECT * FROM OCI360_DB_EXAINFRA 16:49:57 6b.595 16:49:58 6b "00948_oci360_6b_595_exadata_infrastructure.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:50:03 6c "Autonomous Services" 16:50:03 Autonomous Databases SELECT t1.* FROM OCI360_AUTONOMOUS_DB t1 16:50:03 6c.596 16:50:05 6c "00949_oci360_6c_596_autonomous_databases.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:50:10 6c "Autonomous Services" 16:50:10 Autonomous Database Backups SELECT t1.* FROM OCI360_AUTONOMOUS_DB_BKP t1 16:50:10 6c.597 16:50:13 6c "00950_oci360_6c_597_autonomous_database_backups.html" 60 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:50:18 6c "Autonomous Services" 16:50:18 Autonomous Datawarehouses SELECT t1.* FROM OCI360_AUTONOMOUS_DW t1 16:50:18 6c.598 16:50:20 6c "00951_oci360_6c_598_autonomous_datawarehouses.html" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:50:25 6c "Autonomous Services" 16:50:25 Autonomous Datawarehouse Backups SELECT t1.* FROM OCI360_AUTONOMOUS_DW_BKP t1 16:50:25 6c.599 16:50:27 6c "00952_oci360_6c_599_autonomous_datawarehouse_backups.html" 60 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:50:36 8a "Cloud Resource-type List" 16:50:36 Resource Types SELECT t1.* FROM OCI360_RESTYPES t1 16:50:36 8a.600 16:50:37 8a "00953_oci360_8a_600_resource_types.html" 2026 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:50:53 8a "Cloud Resource-type List" 16:50:53 Json Metadata SELECT t1.* FROM "OCI360_METADATA" t1 16:50:53 8a.601 16:50:55 8a "00954_oci360_8a_601_json_metadata.html" 1576 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:51:05 8a "Cloud Resource-type List" 16:51:05 IaaS Pricing SELECT SUBJECT, LIC_TYPE, INST_TYPE, TO_CHAR(CEIL(PAYG*100)/100,'999G990D99') PAYG_US$, TO_CHAR(CEIL(MF*100)/100,'999G990D99') MF_US$ FROM "OCI360_PRICING" t1 16:51:05 8a.602 16:51:07 8a "00955_oci360_8a_602_iaas_pricing.html" 56 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:51:14 8b "Miscellaneous" 16:51:14 Control - Failed Tables SELECT t1.* FROM "OCI360_JSONTABS" t1 WHERE is_processed=1 and is_created=0 16:51:14 8b.603 16:51:15 8b "00956_oci360_8b_603_control_failed_tables.html" 0 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:51:15 8b "Miscellaneous" 16:51:15 Control - Json Tables SELECT t1.* FROM "OCI360_JSONTABS" t1 16:51:15 8b.604 16:51:16 8b "00957_oci360_8b_604_control_json_tables.html" 141 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:51:18 8b "Miscellaneous" 16:51:18 Control - Json Columns SELECT t1.* FROM "OCI360_JSONCOLS" t1 16:51:18 8b.605 16:51:20 8b "00958_oci360_8b_605_control_json_columns.html" 125 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:51:25 8b "Miscellaneous" 16:51:25 OCI360 Tables SELECT * FROM all_tables WHERE owner = SYS_CONTEXT('userenv','current_schema') and table_name like 'OCI360\_%' ESCAPE '\' 16:51:25 8b.606 16:51:27 8b "00959_oci360_8b_606_oci360_tables.html" 89 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:51:33 8b "Miscellaneous" 16:51:33 OCI360 Columns SELECT * FROM all_tab_columns WHERE owner = SYS_CONTEXT('userenv','current_schema') and table_name like 'OCI360\_%' ESCAPE '\' 16:51:33 8b.607 16:51:36 8b "00960_oci360_8b_607_oci360_columns.html" 1334 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:52:04 8b "Miscellaneous" 16:52:04 OCI360 User Segments SELECT SEGMENT_NAME, SEGMENT_TYPE, TABLESPACE_NAME, sum(bytes)/power(1024,2) "MBs" FROM user_segments WHERE SEGMENT_NAME like 'OCI360\_%' ESCAPE '\' GROUP BY SEGMENT_NAME, SEGMENT_TYPE, TABLESPACE_NAME ORDER BY 4 DESC 16:52:04 8b.608 16:52:07 8b "00961_oci360_8b_608_oci360_user_segments.html" 90 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:52:14 8b "Miscellaneous" 16:52:14 OCI360 Used Space SELECT sum(bytes)/power(1024,2) "MBs" FROM user_segments WHERE SEGMENT_NAME like 'OCI360\_%' ESCAPE '\' 16:52:14 8b.609 16:52:15 8b "00962_oci360_8b_609_oci360_used_space.html" 1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:52:20 8b "Miscellaneous" 16:52:20 File: 00002_oci360_log.txt 16:52:20 8b.610 16:52:22 8b "00002_oci360_log.txt" 29443 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:52:25 8b "Miscellaneous" 16:52:25 File: 00003_oci360_time_log.txt 16:52:25 8b.611 16:52:26 8b "00003_oci360_time_log.txt" 952 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:52:28 8b "Miscellaneous" 16:52:28 File: 00004_oci360_zip_log.txt 16:52:28 8b.612 16:52:30 8b "00004_oci360_zip_log.txt" 3522 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16:52:32 8b "Miscellaneous" 16:52:32 File: 00009_oci360_0a_internal_json.log 16:52:32 8b.613 16:52:33 8b "00009_oci360_0a_internal_json.log" -1 rows selected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ DEFINE _DATE = "2020-06-30/13:52:38" (CHAR) DEFINE _CONNECT_IDENTIFIER = "oci360_medium" (CHAR) DEFINE _USER = "DBARJ" (CHAR) DEFINE _PRIVILEGE = "" (CHAR) DEFINE _SQLPLUS_RELEASE = "1903000000" (CHAR) DEFINE _EDITOR = "vi" (CHAR) DEFINE _O_VERSION = "Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.5.0.0.0" (CHAR) DEFINE _O_RELEASE = "1905000000" (CHAR) DEFINE MOAT369_PRE_SW_OUTPUT_FDR = "/u01/oci360/oci360_tool/out/teste/" (CHAR) DEFINE OCI360_ADB_CRED = "OCI360_CRED" (CHAR) DEFINE OCI360_ADB_URI = "https://objectstorage.us-ashburn-1.oraclecloud.com/n/idgimbpbaoa7/b/oci360_bucket/o/" (CHAR) DEFINE OCI360_LOAD_MODE = "OFF" (CHAR) DEFINE MOAT369_FW_VYYNN = "v2002" (CHAR) DEFINE MOAT369_FW_VRSN = "v2002 (2020-02-27)" (CHAR) DEFINE MOAT369_FDR = "./moat369" (CHAR) DEFINE MOAT369_FDR_SQL = "./moat369/sql" (CHAR) DEFINE MOAT369_FDR_SH = "./moat369/sh" (CHAR) DEFINE MOAT369_FDR_JS = "./moat369/js" (CHAR) DEFINE FC_ENCODE_HTML = "./moat369/sql/moat369_fc_encode_html.sql" (CHAR) DEFINE FC_ENCRYPT_FILE = "./moat369/sql/moat369_fc_skip_script.sql ./moat369/sql/moat369_fc_encrypt_file.sql" (CHAR) DEFINE FC_GEN_SELECT_STAR_QUERY = "./moat369/sql/moat369_fc_gen_select_star_query.sql" (CHAR) DEFINE FC_GET_DBVAULT_USER = "./moat369/sql/moat369_fc_get_dbvault_user.sql" (CHAR) DEFINE FC_ORACLE_VERSION = "./moat369/sql/moat369_fc_oracle_version.sql" (CHAR) DEFINE FC_MAIN_TABLE_NAME = "./moat369/sql/moat369_fc_main_table_name.sql" (CHAR) DEFINE FC_SEQ_OUTPUT_FILE = "./moat369/sql/moat369_fc_seq_output_file.sql" (CHAR) DEFINE FC_REN_OUTPUT_FILE = "./moat369/sql/moat369_fc_ren_output_file.sql" (CHAR) DEFINE FC_CHECK_LAST_SQL_STATUS = "./moat369/sql/moat369_fc_check_last_sql_status.sql" (CHAR) DEFINE FC_CALL_SECION = "./moat369/sql/moat369_fc_call_section.sql" (CHAR) DEFINE FC_CALL_SECION_SUB = "./moat369/sql/moat369_fc_call_section_sub.sql" (CHAR) DEFINE FC_SECTION_VARIABLES = "./moat369/sql/moat369_fc_section_variables.sql" (CHAR) DEFINE FC_LOAD_COLUMN = "./moat369/sql/moat369_fc_load_column.sql" (CHAR) DEFINE FC_CONVERT_TXT_TO_HTML = "./moat369/sql/moat369_fc_skip_script.sql ./moat369/sql/moat369_fc_convert_txt_to_html.sql" (CHAR) DEFINE FC_GEN_OBJECT_DDL = "./moat369/sql/moat369_fc_gen_object_ddl.sql" (CHAR) DEFINE FC_EXIT_NOT_CONNECTED = "./moat369/sql/moat369_fc_exit_not_connected.sql" (CHAR) DEFINE FC_EXIT_NO_FOLDER_PERMS = "./moat369/sql/moat369_fc_exit_no_folder_perms.sql" (CHAR) DEFINE FC_SET_TERM_OFF = "./moat369/sql/moat369_fc_set_term_off.sql" (CHAR) DEFINE FC_CLEAN_FILE_NAME = "./moat369/sql/moat369_fc_clean_file_name.sql" (CHAR) DEFINE FC_CHECK_CONFIG = "./moat369/sql/moat369_fc_check_config.sql" (CHAR) DEFINE FC_DEF_EMPTY_VAR = "./moat369/sql/moat369_fc_def_empty_var.sql" (CHAR) DEFINE FC_DEF_BIND_IFNOTDEF = "./moat369/sql/moat369_fc_def_bind_ifnotdef.sql" (CHAR) DEFINE FC_SET_VALUE_VAR_NVL = "./moat369/sql/moat369_fc_set_value_var_nvl.sql" (CHAR) DEFINE FC_SET_VALUE_VAR_NVL2 = "./moat369/sql/moat369_fc_set_value_var_nvl2.sql" (CHAR) DEFINE FC_SET_VALUE_VAR_DECODE = "./moat369/sql/moat369_fc_set_value_var_decode.sql" (CHAR) DEFINE FC_GEN_TEMP_FILE = "./moat369/sql/moat369_fc_gen_temp_file.sql" (CHAR) DEFINE FC_VALIDATE_VARIABLE = "./moat369/sql/moat369_fc_validate_variable.sql" (CHAR) DEFINE FC_ZIP_DRIVER_FILES = "./moat369/sql/moat369_fc_zip_driver_files.sql" (CHAR) DEFINE FC_LOAD_FILE_IFEXIST = "./moat369/sql/moat369_fc_load_file_ifexist.sql" (CHAR) DEFINE FC_DEF_OUTPUT_FILE = "./moat369/sql/moat369_fc_def_output_file.sql" (CHAR) DEFINE FC_MOD_STATE = "./moat369/sql/moat369_fc_mod_state.sql" (CHAR) DEFINE FC_CLEAR_DEFS = "./moat369/sql/moat369_fc_clear_defs.sql" (CHAR) DEFINE FC_RESET_DEFS = "./moat369/sql/moat369_fc_reset_defs.sql" (CHAR) DEFINE FC_SPOOL_START = "./moat369/sql/moat369_fc_spool_start.sql" (CHAR) DEFINE FC_SPOOL_END = "./moat369/sql/moat369_fc_spool_end.sql" (CHAR) DEFINE FC_ADD_TABLEFILTER = "./moat369/sql/moat369_fc_add_tablefilter.sql" (CHAR) DEFINE FC_ADD_SORTTABLE = "./moat369/sql/moat369_fc_skip_script.sql ./moat369/sql/moat369_fc_add_sorttable.sql" (CHAR) DEFINE FC_PARSE_PARAMETERS = "./moat369/sql/moat369_fc_parse_parameters.sql" (CHAR) DEFINE FC_CHECK_FILE_EXISTS = "./moat369/sql/moat369_fc_check_file_exists.sql" (CHAR) DEFINE SH_CSV_TO_METADATA_DDL = "./moat369/sh/csv_to_metadata_ddl.sh" (CHAR) DEFINE SH_CSV_TO_HTML_TABLE = "./moat369/sh/csv_to_html_table.sh" (CHAR) DEFINE SH_CSV_TO_GCHART_DATA = "./moat369/sh/csv_to_gchart_data.sh" (CHAR) DEFINE FC_SKIP_SCRIPT = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE 9A_PRE_ONE = "./moat369/sql/moat369_9a_pre_one.sql" (CHAR) DEFINE _RC = "0" (CHAR) DEFINE MOAT369_FW_VYYYY = "2020" (CHAR) DEFINE MOAT369_PRE_SW_BASE = "" (CHAR) DEFINE MOAT369_SW_BASE = "./" (CHAR) DEFINE MOAT369_PRE_SW_FOLDER = "" (CHAR) DEFINE MOAT369_SW_FOLDER = ".//sql" (CHAR) DEFINE MOAT369_SW_NAME = "oci360" (CHAR) DEFINE MOAT369_SW_LOGO_FILE = "oci360.jpg" (CHAR) DEFINE MOAT369_SW_ICON_FILE = "oci360.ico" (CHAR) DEFINE MOAT369_SW_CERT_FILE = "" (CHAR) DEFINE MOAT369_SW_TITLE_DESC = "Oracle Cloud Infrastructure 360-degree View" (CHAR) DEFINE MOAT369_SW_URL = "https://www.github.com/dbarj/oci360/" (CHAR) DEFINE MOAT369_SW_RPT_COLS = "8" (CHAR) DEFINE MOAT369_SW_MISC_FDR = "js" (CHAR) DEFINE MOAT369_SW_DBTOOL = "N" (CHAR) DEFINE MOAT369_SW_LOGO_TITLE_1 = "oci360 is a tool that provides a 360-degree view of OCI." (CHAR) DEFINE MOAT369_SW_LOGO_TITLE_2 = "" (CHAR) DEFINE MOAT369_SW_LOGO_TITLE_3 = "" (CHAR) DEFINE MOAT369_SW_LOGO_TITLE_4 = "" (CHAR) DEFINE MOAT369_SW_LOGO_TITLE_5 = "" (CHAR) DEFINE MOAT369_SW_LOGO_TITLE_6 = "" (CHAR) DEFINE MOAT369_SW_LOGO_TITLE_7 = "" (CHAR) DEFINE MOAT369_SW_LOGO_TITLE_8 = "" (CHAR) DEFINE MOAT369_SW_VYYNN = "v20.06" (CHAR) DEFINE MOAT369_SW_VRSN = "v20.06 (2020-06-25)" (CHAR) DEFINE MOAT369_SW_COPYRIGHT = "oci360 (c) 2020, All rights reserved." (CHAR) DEFINE MOAT369_SW_AUTHOR = "rodrigo.jorge" (CHAR) DEFINE MOAT369_SW_EMAIL = "@rodrigojorgedba" (CHAR) DEFINE MOAT369_SW_ENC_SQL = "N" (CHAR) DEFINE MOAT369_SW_PARAM1 = "section" (CHAR) DEFINE MOAT369_SW_PARAM2 = "custom" (CHAR) DEFINE MOAT369_SW_PARAM2_VAR = "oci360_load_mode_param" (CHAR) DEFINE MOAT369_SECTIONS = "" (CHAR) DEFINE MOAT369_CONF_DAYS = "2" (CHAR) DEFINE MOAT369_CONF_DATE_FROM = "YYYY-MM-DD" (CHAR) DEFINE MOAT369_CONF_DATE_TO = "YYYY-MM-DD" (CHAR) DEFINE MOAT369_CONF_WORK_TIME_FROM = "0730" (CHAR) DEFINE MOAT369_CONF_WORK_TIME_TO = "1930" (CHAR) DEFINE MOAT369_CONF_WORK_DAY_FROM = "2" (CHAR) DEFINE MOAT369_CONF_WORK_DAY_TO = "6" (CHAR) DEFINE MOAT369_CONF_ENCRYPT_OUTPUT = "OFF" (CHAR) DEFINE MOAT369_CONF_ENCRYPT_HTML = "OFF" (CHAR) DEFINE MOAT369_CONF_COMPRESS_HTML = "OFF" (CHAR) DEFINE MOAT369_CONF_INCL_HTML = "Y" (CHAR) DEFINE MOAT369_CONF_INCL_TEXT = "N" (CHAR) DEFINE MOAT369_CONF_INCL_CSV = "Y" (CHAR) DEFINE MOAT369_CONF_INCL_LINE = "Y" (CHAR) DEFINE MOAT369_CONF_INCL_PIE = "Y" (CHAR) DEFINE MOAT369_CONF_INCL_BAR = "Y" (CHAR) DEFINE MOAT369_CONF_INCL_GRAPH = "Y" (CHAR) DEFINE MOAT369_CONF_INCL_FILE = "Y" (CHAR) DEFINE MOAT369_CONF_DEF_HTML = "Y" (CHAR) DEFINE MOAT369_CONF_DEF_TEXT = "N" (CHAR) DEFINE MOAT369_CONF_DEF_CSV = "N" (CHAR) DEFINE MOAT369_CONF_DEF_LINE = "N" (CHAR) DEFINE MOAT369_CONF_DEF_PIE = "N" (CHAR) DEFINE MOAT369_CONF_DEF_BAR = "N" (CHAR) DEFINE MOAT369_CONF_DEF_GRAPH = "N" (CHAR) DEFINE MOAT369_CONF_DEF_FILE = "N" (CHAR) DEFINE MOAT369_CONF_INCL_TKPROF = "N" (CHAR) DEFINE MOAT369_CONF_INCL_WR_DATA = "N" (CHAR) DEFINE MOAT369_CONF_INCL_RES = "N" (CHAR) DEFINE MOAT369_CONF_INCL_ESP = "N" (CHAR) DEFINE MOAT369_CONF_INCL_OPATCH = "N" (CHAR) DEFINE MOAT369_CONF_INCL_DRIVER = "Y" (CHAR) DEFINE MOAT369_CONF_ASK_LICENSE = "N" (CHAR) DEFINE MOAT369_CONF_SQL_FORMAT = "Y" (CHAR) DEFINE MOAT369_CONF_SQL_HIGHLIGHT = "Y" (CHAR) DEFINE MOAT369_DEF_SQL_FORMAT = "N" (CHAR) DEFINE MOAT369_DEF_SQL_HIGHLIGHT = "Y" (CHAR) DEFINE MOAT369_SW_OUTPUT_FDR = "/u01/oci360/oci360_tool/out/teste/" (CHAR) DEFINE DEBUG = "OFF" (CHAR) DEFINE MOAT369_SW_GCHART_PATH = "https://www.gstatic.com/charts/loader.js" (CHAR) DEFINE MOAT369_SW_PARAM3 = "null" (CHAR) DEFINE MOAT369_SW_PARAM4 = "null" (CHAR) DEFINE MOAT369_SW_PARAM5 = "null" (CHAR) DEFINE MOAT369_SW_PARAM1_VAR = "" (CHAR) DEFINE MOAT369_SW_PARAM3_VAR = "" (CHAR) DEFINE MOAT369_SW_PARAM4_VAR = "" (CHAR) DEFINE MOAT369_SW_PARAM5_VAR = "" (CHAR) DEFINE MOAT369_PRE_ENCRYPT_OUTPUT = "" (CHAR) DEFINE MOAT369_PRE_ENCRYPT_HTML = "" (CHAR) DEFINE MOAT369_PRE_COMPRESS_HTML = "" (CHAR) DEFINE MOAT369_CONF_INCL_MAP = "Y" (CHAR) DEFINE MOAT369_CONF_INCL_TREEMAP = "Y" (CHAR) DEFINE MOAT369_CONF_DEF_MAP = "N" (CHAR) DEFINE MOAT369_CONF_DEF_TREEMAP = "N" (CHAR) DEFINE MOAT369_CONF_TABLEFILTER = "Y" (CHAR) DEFINE MOAT369_DEF_SQL_MAXROWS = "10000" (CHAR) DEFINE MOAT369_DEF_SQL_SHOW = "Y" (CHAR) DEFINE MOAT369_SW_DESC_LINESIZE = "150" (CHAR) DEFINE MOAT369_SW_OUTPUT_FDR_FPATH = "/u01/oci360/oci360_tool/out/teste" (CHAR) DEFINE SECTIONS_PARAM = "" (CHAR) DEFINE OCI360_LOAD_MODE_PARAM = "" (CHAR) DEFINE LICENSE_PACK = "N" (CHAR) DEFINE DIAGNOSTICS_PACK = "N" (CHAR) DEFINE SKIP_DIAGNOSTICS = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE TUNING_PACK = "N" (CHAR) DEFINE SKIP_TUNING = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE FC_ENCRYPT_OUTPUT = "./moat369/sql/moat369_fc_skip_script.sql ./moat369/sql/moat369_fc_encrypt_file.sql" (CHAR) DEFINE MOAT369_PRE_ENC_PUB_FILE = "" (CHAR) DEFINE MOAT369_ENC_PUB_FILE = ".//js/" (CHAR) DEFINE MOAT369_PRE_SW_KEY_FILE = "" (CHAR) DEFINE ENC_KEY_FILE = "/u01/oci360/oci360_tool/out/teste//key.bin" (CHAR) DEFINE CMD_AWK = "awk" (CHAR) DEFINE CMD_GREP = "grep" (CHAR) DEFINE HISTORY_DAYS = "31" (CHAR) DEFINE HIST_WORK_DAYS = "22" (CHAR) DEFINE MOAT369_DATE_FORMAT = "YYYY-MM-DD"T"HH24:MI:SS" (CHAR) DEFINE MOAT369_DATE_FROM = "2020-05-30" (CHAR) DEFINE MOAT369_DATE_TO = "2020-07-01" (CHAR) DEFINE SKIP_TKPROF = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE MOAT369_PREFIX = "oci360" (CHAR) DEFINE MOAT369_DBID = "1146558291" (CHAR) DEFINE CONNECT_INSTANCE_NUMBER = "1" (CHAR) DEFINE DATABASE_NAME_SHORT = "klr8s3fx1b" (CHAR) DEFINE HOST_NAME_SHORT = "feky1pod" (CHAR) DEFINE SQL_TRACE_LEVEL = "1" (CHAR) DEFINE TITLE = "File: 00010_oci360_0a_internal_csv.log" (CHAR) DEFINE TITLE_NO_SPACES = "file_00009oci3600ainternaljsonlog" (CHAR) DEFINE TITLE_SUFFIX = "" (CHAR) DEFINE MOAT369_FILE_TIME = "20200630_1549" (CHAR) DEFINE COMMON_MOAT369_PREFIX = "oci360" (CHAR) DEFINE MOAT369_README = "/u01/oci360/oci360_tool/out/teste//00000_readme_first.txt" (CHAR) DEFINE MOAT369_MAIN_REPORT = "/u01/oci360/oci360_tool/out/teste//00001_oci360_index.html" (CHAR) DEFINE MOAT369_LOG = "/u01/oci360/oci360_tool/out/teste//00002_oci360_log.txt" (CHAR) DEFINE MOAT369_LOG2 = "/u01/oci360/oci360_tool/out/teste//00003_oci360_time_log.txt" (CHAR) DEFINE MOAT369_LOG3 = "/u01/oci360/oci360_tool/out/teste//00004_oci360_zip_log.txt" (CHAR) DEFINE MOAT369_TKPROF = "/u01/oci360/oci360_tool/out/teste//00005_oci360_tkprof" (CHAR) DEFINE MOAT369_ALERT = "/u01/oci360/oci360_tool/out/teste//00006_oci360_alert" (CHAR) DEFINE MOAT369_OPATCH = "/u01/oci360/oci360_tool/out/teste//00007_oci360_opatch.zip" (CHAR) DEFINE MOAT369_DRIVER = "/u01/oci360/oci360_tool/out/teste//00008_oci360_drivers.zip" (CHAR) DEFINE MOAT369_CPUINFO = "/u01/oci360/oci360_tool/out/teste//cpuinfo_model_name.txt" (CHAR) DEFINE MOAT369_MAIN_FILENAME = "oci360" (CHAR) DEFINE MOAT369_ZIP_FILENAME = "/u01/oci360/oci360_tool/out/teste//oci360_20200630_1549" (CHAR) DEFINE MOAT369_TRACEFILE_IDENTIFIER = "oci360" (CHAR) DEFINE MOAT369_QUERY = "/u01/oci360/oci360_tool/out/teste//oci360_query.sql" (CHAR) DEFINE MOAT369_PRE_SW_OUTPUT_FILE = "" (CHAR) DEFINE MOAT369_MAIN_REPORT_NOPATH = "00001_oci360_index.html" (CHAR) DEFINE MOAT369_ZIP_FILENAME_NOPATH = "oci360_20200630_1549" (CHAR) DEFINE MOAT369_STYLE_CSS = "style_1.css" (CHAR) DEFINE DB_VERSION = "19c" (CHAR) DEFINE IS_VER_LE_9_1 = "N" (CHAR) DEFINE IS_VER_LE_9_2 = "N" (CHAR) DEFINE IS_VER_LE_9 = "N" (CHAR) DEFINE IS_VER_LE_10_1 = "N" (CHAR) DEFINE IS_VER_LE_10_2 = "N" (CHAR) DEFINE IS_VER_LE_10 = "N" (CHAR) DEFINE IS_VER_LE_11_1 = "N" (CHAR) DEFINE IS_VER_LE_11_2 = "N" (CHAR) DEFINE IS_VER_LE_11 = "N" (CHAR) DEFINE IS_VER_LE_12_1 = "N" (CHAR) DEFINE IS_VER_LE_12_2 = "N" (CHAR) DEFINE IS_VER_LE_12 = "N" (CHAR) DEFINE IS_VER_LE_18 = "N" (CHAR) DEFINE IS_VER_GE_9_1 = "Y" (CHAR) DEFINE IS_VER_GE_9_2 = "Y" (CHAR) DEFINE IS_VER_GE_9 = "Y" (CHAR) DEFINE IS_VER_GE_10_1 = "Y" (CHAR) DEFINE IS_VER_GE_10_2 = "Y" (CHAR) DEFINE IS_VER_GE_10 = "Y" (CHAR) DEFINE IS_VER_GE_11_1 = "Y" (CHAR) DEFINE IS_VER_GE_11_2 = "Y" (CHAR) DEFINE IS_VER_GE_11 = "Y" (CHAR) DEFINE IS_VER_GE_12_1 = "Y" (CHAR) DEFINE IS_VER_GE_12_2 = "Y" (CHAR) DEFINE IS_VER_GE_12 = "Y" (CHAR) DEFINE IS_VER_GE_18 = "Y" (CHAR) DEFINE SKIP_VER_LE_9_1 = "" (CHAR) DEFINE SKIP_VER_LE_9_2 = "" (CHAR) DEFINE SKIP_VER_LE_9 = "" (CHAR) DEFINE SKIP_VER_LE_10_1 = "" (CHAR) DEFINE SKIP_VER_LE_10_2 = "" (CHAR) DEFINE SKIP_VER_LE_10 = "" (CHAR) DEFINE SKIP_VER_LE_11_1 = "" (CHAR) DEFINE SKIP_VER_LE_11_2 = "" (CHAR) DEFINE SKIP_VER_LE_11 = "" (CHAR) DEFINE SKIP_VER_LE_12_1 = "" (CHAR) DEFINE SKIP_VER_LE_12_2 = "" (CHAR) DEFINE SKIP_VER_LE_12 = "" (CHAR) DEFINE SKIP_VER_LE_18 = "" (CHAR) DEFINE SKIP_VER_GE_9_1 = "--" (CHAR) DEFINE SKIP_VER_GE_9_2 = "--" (CHAR) DEFINE SKIP_VER_GE_9 = "--" (CHAR) DEFINE SKIP_VER_GE_10_1 = "--" (CHAR) DEFINE SKIP_VER_GE_10_2 = "--" (CHAR) DEFINE SKIP_VER_GE_10 = "--" (CHAR) DEFINE SKIP_VER_GE_11_1 = "--" (CHAR) DEFINE SKIP_VER_GE_11_2 = "--" (CHAR) DEFINE SKIP_VER_GE_11 = "--" (CHAR) DEFINE SKIP_VER_GE_12_1 = "--" (CHAR) DEFINE SKIP_VER_GE_12_2 = "--" (CHAR) DEFINE SKIP_VER_GE_12 = "--" (CHAR) DEFINE SKIP_VER_GE_18 = "--" (CHAR) DEFINE IS_CDB = "Y" (CHAR) DEFINE SKIP_CDB = "" (CHAR) DEFINE SKIP_NONCDB = "--" (CHAR) DEFINE CMD_GETCPU = "cat /proc/cpuinfo | grep -i name | sort | uniq" (CHAR) DEFINE AVG_CPU_COUNT = "2" (CHAR) DEFINE SUM_CPU_COUNT = "2" (CHAR) DEFINE AVG_CORE_COUNT = "" (CHAR) DEFINE AVG_THREAD_COUNT = "" (CHAR) DEFINE HOSTS_COUNT = "0" (CHAR) DEFINE CORES_THREADS_HOSTS = "cores:(avg) threads:(avg) hosts:0" (CHAR) DEFINE DATABASE_BLOCK_SIZE = "8192" (CHAR) DEFINE IS_SINGLE_INSTANCE = "Y" (CHAR) DEFINE TOOL_SYSDATE = "20200630154924" (CHAR) DEFINE BETWEEN_DATES = ", between 2020-05-30 and 2020-07-01" (CHAR) DEFINE MOAT369_SKIP_HTML = "" (CHAR) DEFINE MOAT369_SKIP_TEXT = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE MOAT369_SKIP_CSV = "" (CHAR) DEFINE MOAT369_SKIP_LINE = "" (CHAR) DEFINE MOAT369_SKIP_PIE = "" (CHAR) DEFINE MOAT369_SKIP_BAR = "" (CHAR) DEFINE MOAT369_SKIP_GRAPH = "" (CHAR) DEFINE MOAT369_SKIP_MAP = "" (CHAR) DEFINE MOAT369_SKIP_TREEMAP = "" (CHAR) DEFINE MOAT369_SKIP_FILE = "" (CHAR) DEFINE MOAT369_DEF_SKIP_HTML = "" (CHAR) DEFINE MOAT369_DEF_SKIP_TEXT = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE MOAT369_DEF_SKIP_CSV = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE MOAT369_DEF_SKIP_LINE = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE MOAT369_DEF_SKIP_PIE = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE MOAT369_DEF_SKIP_BAR = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE MOAT369_DEF_SKIP_GRAPH = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE MOAT369_DEF_SKIP_MAP = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE MOAT369_DEF_SKIP_TREEMAP = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE MOAT369_DEF_SKIP_FILE = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE TOP_LEVEL_HINTS = "NO_MERGE" (CHAR) DEFINE SQ_FACT_HINTS = "MATERIALIZE NO_MERGE" (CHAR) DEFINE DS_HINT = "DYNAMIC_SAMPLING(4)" (CHAR) DEFINE SKIP_ALL = "" (CHAR) DEFINE EXADATA = "" (CHAR) DEFINE COLUMN_NUMBER = "1" (CHAR) DEFINE RECOVERY = "& recovery" (CHAR) DEFINE TOTAL_HOURS = "" (CHAR) DEFINE MOAT369_TIME_STAMP = "2020-06-30T16:52:32" (CHAR) DEFINE REPORT_SEQUENCE = "614" (CHAR) DEFINE CURRENT_TIME = "" (CHAR) DEFINE MOAT369_UDUMP_PATH = "/u02/app/oracle/diag/rdbms/feky1pod/feky1pod1/trace/" (CHAR) DEFINE MOAT369_SPID = "358542" (CHAR) DEFINE OCI360_1A = "" (CHAR) DEFINE OCI360_1B = "" (CHAR) DEFINE OCI360_1C = "" (CHAR) DEFINE OCI360_1D = "" (CHAR) DEFINE OCI360_1E = "" (CHAR) DEFINE OCI360_1F = "" (CHAR) DEFINE OCI360_1G = "" (CHAR) DEFINE OCI360_1H = "" (CHAR) DEFINE OCI360_1I = "" (CHAR) DEFINE OCI360_1J = "" (CHAR) DEFINE OCI360_1K = "" (CHAR) DEFINE OCI360_2A = "" (CHAR) DEFINE OCI360_2B = "" (CHAR) DEFINE OCI360_2C = "" (CHAR) DEFINE OCI360_2D = "" (CHAR) DEFINE OCI360_2E = "" (CHAR) DEFINE OCI360_2F = "" (CHAR) DEFINE OCI360_2G = "" (CHAR) DEFINE OCI360_2H = "" (CHAR) DEFINE OCI360_2I = "" (CHAR) DEFINE OCI360_2J = "" (CHAR) DEFINE OCI360_2K = "" (CHAR) DEFINE OCI360_3A = "" (CHAR) DEFINE OCI360_3B = "" (CHAR) DEFINE OCI360_3C = "" (CHAR) DEFINE OCI360_3D = "" (CHAR) DEFINE OCI360_3E = "" (CHAR) DEFINE OCI360_3F = "" (CHAR) DEFINE OCI360_3G = "" (CHAR) DEFINE OCI360_3H = "" (CHAR) DEFINE OCI360_3I = "" (CHAR) DEFINE OCI360_3J = "" (CHAR) DEFINE OCI360_3K = "" (CHAR) DEFINE OCI360_4A = "" (CHAR) DEFINE OCI360_4B = "" (CHAR) DEFINE OCI360_4C = "" (CHAR) DEFINE OCI360_4D = "" (CHAR) DEFINE OCI360_4E = "" (CHAR) DEFINE OCI360_4F = "" (CHAR) DEFINE OCI360_4G = "" (CHAR) DEFINE OCI360_4H = "" (CHAR) DEFINE OCI360_4I = "" (CHAR) DEFINE OCI360_4J = "" (CHAR) DEFINE OCI360_4K = "" (CHAR) DEFINE OCI360_5A = "" (CHAR) DEFINE OCI360_5B = "" (CHAR) DEFINE OCI360_5C = "" (CHAR) DEFINE OCI360_5D = "" (CHAR) DEFINE OCI360_5E = "" (CHAR) DEFINE OCI360_5F = "" (CHAR) DEFINE OCI360_5G = "" (CHAR) DEFINE OCI360_5H = "" (CHAR) DEFINE OCI360_5I = "" (CHAR) DEFINE OCI360_5J = "" (CHAR) DEFINE OCI360_5K = "" (CHAR) DEFINE OCI360_6A = "" (CHAR) DEFINE OCI360_6B = "" (CHAR) DEFINE OCI360_6C = "" (CHAR) DEFINE OCI360_6D = "" (CHAR) DEFINE OCI360_6E = "" (CHAR) DEFINE OCI360_6F = "" (CHAR) DEFINE OCI360_6G = "" (CHAR) DEFINE OCI360_6H = "" (CHAR) DEFINE OCI360_6I = "" (CHAR) DEFINE OCI360_6J = "" (CHAR) DEFINE OCI360_6K = "" (CHAR) DEFINE OCI360_7A = "" (CHAR) DEFINE OCI360_7B = "" (CHAR) DEFINE OCI360_7C = "" (CHAR) DEFINE OCI360_7D = "" (CHAR) DEFINE OCI360_7E = "" (CHAR) DEFINE OCI360_7F = "" (CHAR) DEFINE OCI360_7G = "" (CHAR) DEFINE OCI360_7H = "" (CHAR) DEFINE OCI360_7I = "" (CHAR) DEFINE OCI360_7J = "" (CHAR) DEFINE OCI360_7K = "" (CHAR) DEFINE OCI360_8A = "" (CHAR) DEFINE OCI360_8B = "" (CHAR) DEFINE OCI360_8C = "" (CHAR) DEFINE OCI360_8D = "" (CHAR) DEFINE OCI360_8E = "" (CHAR) DEFINE OCI360_8F = "" (CHAR) DEFINE OCI360_8G = "" (CHAR) DEFINE OCI360_8H = "" (CHAR) DEFINE OCI360_8I = "" (CHAR) DEFINE OCI360_8J = "" (CHAR) DEFINE OCI360_8K = "" (CHAR) DEFINE OCI360_9A = "" (CHAR) DEFINE OCI360_9B = "" (CHAR) DEFINE OCI360_9C = "" (CHAR) DEFINE OCI360_9D = "" (CHAR) DEFINE OCI360_9E = "" (CHAR) DEFINE OCI360_9F = "" (CHAR) DEFINE OCI360_9G = "" (CHAR) DEFINE OCI360_9H = "" (CHAR) DEFINE OCI360_9I = "" (CHAR) DEFINE OCI360_9J = "" (CHAR) DEFINE OCI360_9K = "" (CHAR) DEFINE ROW_NUM = "-1" (CHAR) DEFINE ROW_NUM_DIF = "0" (CHAR) DEFINE ABSTRACT = "" (CHAR) DEFINE ABSTRACT2 = "" (CHAR) DEFINE MAIN_TABLE = "" (CHAR) DEFINE FOOT = "" (CHAR) DEFINE MAX_ROWS = "10000" (CHAR) DEFINE SQL_HL = "Y" (CHAR) DEFINE SQL_FORMAT = "N" (CHAR) DEFINE SQL_SHOW = "Y" (CHAR) DEFINE SKIP_HTML = "--" (CHAR) DEFINE SKIP_TEXT = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_CSV = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_LCH = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_PCH = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_BCH = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_GRAPH = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_MAP = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_TREEMAP = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_HTML_SPOOL = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_TEXT_FILE = "" (CHAR) DEFINE SKIP_HTML_FILE = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE D3_GRAPH = "" (CHAR) DEFINE OCI360_COLLECTOR = ".//sh/oci_json_export.sh" (CHAR) DEFINE OCI360_TABLES = ".//sh/oci_table_json.csv" (CHAR) DEFINE OCI360_COLUMNS = ".//sh/oci_cols_json.csv" (CHAR) DEFINE FC_JSON_LOADER = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE FC_JSON_METADATA = ".//sql/oci360_fc_json_metadata.sql" (CHAR) DEFINE OCI360_TZCOLFORMAT = "YYYY-MM-DD"T"HH24:MI:SS.FF6TZH:TZM" (CHAR) DEFINE OCI360_LOG_JSON = "/u01/oci360/oci360_tool/out/teste//00009_oci360_0a_internal_json.log" (CHAR) DEFINE OCI360_LOG_JSON_NOPATH = "00009_oci360_0a_internal_json.log" (CHAR) DEFINE OCI360_LOG_CSV = "/u01/oci360/oci360_tool/out/teste//00010_oci360_0a_internal_csv.log" (CHAR) DEFINE OCI360_LOG_CSV_NOPATH = "00010_oci360_0a_internal_csv.log" (CHAR) DEFINE OCI360_EXEC_MODE = "REPORT_ONLY" (CHAR) DEFINE OCI360_CLEAN_ON_EXIT = "OFF" (CHAR) DEFINE OCI360_SKIP_BILLING = "N" (CHAR) DEFINE OCI360_TABLES_OVERRIDE = "" (CHAR) DEFINE OCI360_LOC_SKIP = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE OCI360_ADB_SKIP = "" (CHAR) DEFINE OCI360_LOC_CODE = "--" (CHAR) DEFINE OCI360_ADB_CODE = "" (CHAR) DEFINE OCI360_ADB_URI_PATTERN = "https://objectstorage.[^.]*.oraclecloud.com/n/[^/]*/b/[^/]*/o/" (CHAR) DEFINE OCI360_CHECK = 1 (NUMBER) DEFINE OCI360_JSON_ZIP = "" (CHAR) DEFINE OCI360_JSON_FILES = "/u01/oci360/oci360_tool/out/teste//oci_json_export_list.txt" (CHAR) DEFINE OCI360_JSON_FILES_NOPATH = "oci_json_export_list.txt" (CHAR) DEFINE OCI360_CSV_FILES = "/u01/oci360/oci360_tool/out/teste//oci_csv_export_list.txt" (CHAR) DEFINE OCI360_CSV_REPORT_ZIP = "" (CHAR) DEFINE OCI360_CSV_FILES_NOPATH = "oci_csv_export_list.txt" (CHAR) DEFINE OCI360_TAB_COMPRESSION = "COMPRESS FOR QUERY HIGH" (CHAR) DEFINE OCI360_OBJ_DIR = "OCI360_DIR_DBARJ" (CHAR) DEFINE OCI360_OBJ_JSONCOLS = "OCI360_JSONCOLS" (CHAR) DEFINE OCI360_OBJ_JSONTABS = "OCI360_JSONTABS" (CHAR) DEFINE OCI360_OBJ_METADATA = "OCI360_METADATA" (CHAR) DEFINE OCI360_OBJ_PRICING = "OCI360_PRICING" (CHAR) DEFINE OCI360_OBJ_LOCATION = "OCI360_LOCATION" (CHAR) DEFINE OCI360_OBJ_SHAPE = "OCI360_SHAPE_SPECS" (CHAR) DEFINE OCI360_PRE_OBJ_SCHEMA = "" (CHAR) DEFINE OCI360_OBJ_SCHEMA = "SYSTEM" (CHAR) DEFINE OCI360_USER_CURSCHEMA = "DBARJ" (CHAR) DEFINE OCI360_USER_SESSION = "DBARJ" (CHAR) DEFINE OCI360_TEMP_TABLESPACE = "DATA" (CHAR) DEFINE OCI360_OBJ_DIR_DEL = "Y" (CHAR) DEFINE OCI360_PRICING_URL = "https://cloud.oracle.com/iaas/pricing" (CHAR) DEFINE OCI360_PRICING_DATE = "2018-08-28" (CHAR) DEFINE FC_CSV_LOADER = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_BILLING_SQL = "" (CHAR) DEFINE SKIP_SECTION_JSON = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_SECTION_REPUSAGE = "" (CHAR) DEFINE SKIP_SECTION_REPCOST = "" (CHAR) DEFINE SKIP_SECTION_MONIT = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE SKIP_SECTION_AUDIT = "" (CHAR) DEFINE SKIP_SECTION_BILLING = "" (CHAR) DEFINE SKIP_SECTION_BIGDATA = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE OCI360_SKIP_REEXEC_SECVAR = "./moat369/sql/moat369_fc_skip_script.sql " (CHAR) DEFINE OCI360_WEBVOWL_ZIP = ".//js/webvowl_1.1.7.zip" (CHAR) DEFINE OCI360_WEBVOWL_FDR = "webvowl" (CHAR) DEFINE OCI360_WEBVOWL_DATA = "data" (CHAR) DEFINE OCI360_WEBVOWL_JSON = "/u01/oci360/oci360_tool/out/teste//oci360.json" (CHAR) DEFINE OCI360_WEBVOWL_QRY = "/u01/oci360/oci360_tool/out/teste//webvowl_qry.sql" (CHAR) DEFINE OCI360_WEBVOWL_FDR_PATH = "/u01/oci360/oci360_tool/out/teste//webvowl" (CHAR) DEFINE OCI360_WEBVOWL_DATA_PATH = "/u01/oci360/oci360_tool/out/teste//data" (CHAR) DEFINE OCI360_WEBVOWL_INDEX_FILE = "webvowl_index.html" (CHAR) DEFINE OCI360_WEBVOWL_INDEX_PATH = ".//js/webvowl_index.html" (CHAR) DEFINE OCI360_WEBVOWL_FILENAME = "00011_oci360_1a_webvowl_index.html" (CHAR) DEFINE OCI360_WEBVOWL_FPATH_FILENAME = "/u01/oci360/oci360_tool/out/teste//00011_oci360_1a_webvowl_index.html" (CHAR) DEFINE HH_MM_SS = "16:52:33" (CHAR) DEFINE SPOOL_FILENAME = "613_file_00009oci3600ainternaljsonlog" (CHAR) DEFINE ONE_SPOOL_FILENAME = "00009_oci360_0a_internal_json.log" (CHAR) DEFINE MOAT369_PREV_SQL_ID = "g4y6nw3tts7cc" (CHAR) DEFINE MOAT369_PREV_CHILD_NUMBER = "4" (CHAR) DEFINE MOAT369_D3_GRAPH_VALID_OPTS = "|circle_packing|" (CHAR) DEFINE MOAT369_D3_GRAPH_SKIP = "" (CHAR) DEFINE MOAT369_TF_USAGE = "Y" (CHAR) DEFINE MOAT369_D3_USAGE = "Y" (CHAR) DEFINE HAXIS = "19c cores:(avg) threads:(avg) hosts:0" (CHAR) DEFINE ONE_SPOOL_TEXT_FILE = "/u01/oci360/oci360_tool/out/teste//00010_oci360_0a_internal_csv.log" (CHAR) DEFINE ONE_SPOOL_TEXT_FILE_RENAME = "N" (CHAR) DBFIPS_140 boolean FALSE active_instance_count integer adg_account_info_tracking string LOCAL adg_redirect_dml boolean FALSE allow_global_dblinks boolean FALSE allow_group_access_to_sga boolean FALSE allow_rowid_column_type boolean FALSE approx_for_aggregation boolean FALSE approx_for_count_distinct boolean FALSE approx_for_percentile string none aq_tm_processes integer 40 archive_lag_target integer 0 asm_diskstring string asm_preferred_read_failure_groups string audit_file_dest string /u02/app/oracle/admin/feky1pod /adump audit_sys_operations boolean TRUE audit_syslog_level string audit_trail string DB autotask_max_active_pdbs integer 10 awr_pdb_autoflush_enabled boolean TRUE awr_pdb_max_parallel_slaves integer 10 awr_snapshot_time_offset integer 0 background_core_dump string partial background_dump_dest string /u02/app/oracle/product/19.0.0 .0/dbhome_1/rdbms/log backup_tape_io_slaves boolean FALSE bitmap_merge_area_size integer 1048576 blank_trimming boolean FALSE buffer_pool_keep string buffer_pool_recycle string cdb_cluster boolean FALSE cdb_cluster_name string cell_offload_compaction string ADAPTIVE cell_offload_decryption boolean TRUE cell_offload_parameters string cell_offload_plan_display string AUTO cell_offload_processing boolean TRUE cell_offloadgroup_name string circuits integer client_result_cache_lag big integer 3000 client_result_cache_size big integer 0 client_statistics_level string TYPICAL clonedb boolean FALSE clonedb_dir string cluster_database boolean TRUE cluster_database_instances integer 2 cluster_interconnects string commit_logging string commit_point_strength integer 1 commit_wait string commit_write string common_user_prefix string compatible string 19.0.0 connection_brokers string ((TYPE=DEDICATED)(BROKERS=1)), ((TYPE=EMON)(BROKERS=1)) containers_parallel_degree integer 65535 control_file_record_keep_time integer 7 control_files string +DATA/FEKY1POD/CONTROLFILE/cur rent.271.1042484691, +RECO/FEK Y1POD/CONTROLFILE/current.260. 1042484693 control_management_pack_access string DIAGNOSTIC+TUNING core_dump_dest string /u02/app/oracle/diag/rdbms/fek y1pod/feky1pod1/cdump cpu_count integer 2 cpu_min_count string 2 create_bitmap_area_size integer 8388608 create_stored_outlines string cursor_bind_capture_destination string memory+disk cursor_invalidation string IMMEDIATE cursor_sharing string EXACT cursor_space_for_time boolean FALSE data_guard_max_io_time integer 240 data_guard_max_longio_time integer 240 data_guard_sync_latency integer 0 data_transfer_cache_size big integer 0 db_16k_cache_size big integer 0 db_2k_cache_size big integer 0 db_32k_cache_size big integer 0 db_4k_cache_size big integer 0 db_8k_cache_size big integer 0 db_big_table_cache_percent_target string 0 db_block_buffers integer 0 db_block_checking string MEDIUM db_block_checksum string TYPICAL db_block_size integer 8192 db_cache_advice string ON db_cache_size big integer 0 db_create_file_dest string +DATA db_create_online_log_dest_1 string db_create_online_log_dest_2 string db_create_online_log_dest_3 string db_create_online_log_dest_4 string db_create_online_log_dest_5 string db_domain string db_file_multiblock_read_count integer 128 db_file_name_convert string db_files integer 25 db_flash_cache_file string db_flash_cache_size big integer 0 db_flashback_retention_target integer 480 db_index_compression_inheritance string NONE db_keep_cache_size big integer 0 db_lost_write_protect string TYPICAL db_name string feky1pod db_performance_profile string db_recovery_file_dest string +RECO db_recovery_file_dest_size big integer 21167764M db_recycle_cache_size big integer 0 db_securefile string ALWAYS db_ultra_safe string OFF db_unique_name string feky1pod db_unrecoverable_scn_tracking boolean TRUE db_writer_processes integer 11 dbwr_io_slaves integer 0 ddl_lock_timeout integer 0 default_sharing string METADATA deferred_segment_creation boolean TRUE dg_broker_config_file1 string /u02/app/oracle/product/19.0.0 .0/dbhome_1/dbs/dr1feky1pod.da t dg_broker_config_file2 string /u02/app/oracle/product/19.0.0 .0/dbhome_1/dbs/dr2feky1pod.da t dg_broker_start boolean FALSE diagnostic_dest string /u02/app/oracle disable_pdb_feature big integer 0 disk_asynch_io boolean TRUE dispatchers string (PROTOCOL=TCP) (SERVICE=feky1p odXDB) distributed_lock_timeout integer 360 dml_locks integer 132368 dnfs_batch_size integer 4096 drcp_connection_limit integer 200 drcp_dedicated_opt string NO dst_upgrade_insert_conv boolean TRUE enable_automatic_maintenance_pdb boolean TRUE enable_ddl_logging boolean FALSE enable_dnfs_dispatcher boolean FALSE enable_goldengate_replication boolean TRUE enable_imc_with_mira boolean FALSE enable_pluggable_database boolean TRUE enabled_PDBs_on_standby string * encrypt_new_tablespaces string CLOUD_ONLY event string external_keystore_credential_locatio string +DATA/encrypt_wallet/tde_seps n fal_client string fal_server string fast_start_io_target integer 0 fast_start_mttr_target integer 0 fast_start_parallel_rollback string HIGH file_mapping boolean FALSE fileio_network_adapters string filesystemio_options string none fixed_date string gcs_server_processes integer 4 global_names boolean FALSE global_txn_processes integer 1 hash_area_size integer 131072 heat_map string OFF hi_shared_memory_address integer 0 hs_autoregister boolean TRUE http_proxy string ifile file ignore_session_set_param_errors string inmemory_adg_enabled boolean TRUE inmemory_automatic_level string OFF inmemory_clause_default string inmemory_expressions_usage string ENABLE inmemory_force string DEFAULT inmemory_max_populate_servers integer 0 inmemory_optimized_arithmetic string DISABLE inmemory_prefer_xmem_memcompress string inmemory_prefer_xmem_priority string inmemory_query string ENABLE inmemory_size big integer 0 inmemory_trickle_repopulate_servers_ integer 1 percent inmemory_virtual_columns string MANUAL inmemory_xmem_size big integer 0 instance_abort_delay_time integer 0 instance_groups string instance_mode string READ-WRITE instance_name string feky1pod1 instance_number integer 1 instance_type string RDBMS instant_restore boolean FALSE java_jit_enabled boolean TRUE java_max_sessionspace_size integer 0 java_pool_size big integer 0 java_restrict string none java_soft_sessionspace_limit integer 0 job_queue_processes integer 5 large_pool_size big integer 0 ldap_directory_access string NONE ldap_directory_sysauth string no license_max_sessions integer 0 license_max_users integer 0 license_sessions_warning integer 0 lob_signature_enable boolean FALSE lock_name_space string lock_sga boolean FALSE log_archive_config string log_archive_dest string log_archive_dest_1 string log_archive_dest_10 string log_archive_dest_11 string log_archive_dest_12 string log_archive_dest_13 string log_archive_dest_14 string log_archive_dest_15 string log_archive_dest_16 string log_archive_dest_17 string log_archive_dest_18 string log_archive_dest_19 string log_archive_dest_2 string log_archive_dest_20 string log_archive_dest_21 string log_archive_dest_22 string log_archive_dest_23 string log_archive_dest_24 string log_archive_dest_25 string log_archive_dest_26 string log_archive_dest_27 string log_archive_dest_28 string log_archive_dest_29 string log_archive_dest_3 string log_archive_dest_30 string log_archive_dest_31 string log_archive_dest_4 string log_archive_dest_5 string log_archive_dest_6 string log_archive_dest_7 string log_archive_dest_8 string log_archive_dest_9 string log_archive_dest_state_1 string enable log_archive_dest_state_10 string enable log_archive_dest_state_11 string enable log_archive_dest_state_12 string enable log_archive_dest_state_13 string enable log_archive_dest_state_14 string enable log_archive_dest_state_15 string enable log_archive_dest_state_16 string enable log_archive_dest_state_17 string enable log_archive_dest_state_18 string enable log_archive_dest_state_19 string enable log_archive_dest_state_2 string enable log_archive_dest_state_20 string enable log_archive_dest_state_21 string enable log_archive_dest_state_22 string enable log_archive_dest_state_23 string enable log_archive_dest_state_24 string enable log_archive_dest_state_25 string enable log_archive_dest_state_26 string enable log_archive_dest_state_27 string enable log_archive_dest_state_28 string enable log_archive_dest_state_29 string enable log_archive_dest_state_3 string enable log_archive_dest_state_30 string enable log_archive_dest_state_31 string enable log_archive_dest_state_4 string enable log_archive_dest_state_5 string enable log_archive_dest_state_6 string enable log_archive_dest_state_7 string enable log_archive_dest_state_8 string enable log_archive_dest_state_9 string enable log_archive_duplex_dest string log_archive_format string %t_%s_%r.dbf log_archive_max_processes integer 4 log_archive_min_succeed_dest integer 1 log_archive_start boolean FALSE log_archive_trace integer 0 log_buffer big integer 479424K log_checkpoint_interval integer 0 log_checkpoint_timeout integer 1800 log_checkpoints_to_alert boolean FALSE log_file_name_convert string long_module_action boolean TRUE mandatory_user_profile string ORA_MANDATORY_PROFILE max_auth_servers integer 25 max_datapump_jobs_per_pdb string 100 max_datapump_parallel_per_job string 50 max_dispatchers integer max_dump_file_size string 1G max_idle_blocker_time integer 5 max_idle_time integer 0 max_iops integer 0 max_mbps integer 0 max_pdbs integer 4098 max_shared_servers integer max_string_size string EXTENDED memoptimize_pool_size big integer 0 memory_max_target big integer 0 memory_target big integer 0 min_auth_servers integer 1 multishard_query_data_consistency string strong multishard_query_partial_results string not allowed nls_calendar string nls_comp string BINARY nls_currency string nls_date_format string YYYY-MM-DD/HH24:MI:SS nls_date_language string nls_dual_currency string nls_iso_currency string nls_language string AMERICAN nls_length_semantics string BYTE nls_nchar_conv_excp string FALSE nls_numeric_characters string ., nls_sort string BINARY nls_territory string AMERICA nls_time_format string nls_time_tz_format string nls_timestamp_format string YYYY-MM-DD/HH24:MI:SS.FF nls_timestamp_tz_format string YYYY-MM-DD/HH24:MI:SS.FF TZH:T ZM noncdb_compatible boolean FALSE object_cache_max_size_percent integer 10 object_cache_optimal_size integer 10240000 ofs_threads integer 40 olap_page_pool_size big integer 0 one_step_plugin_for_pdb_with_tde boolean FALSE open_cursors integer 1000 open_links integer 4 open_links_per_instance integer 4 optimizer_adaptive_plans boolean TRUE optimizer_adaptive_reporting_only boolean FALSE optimizer_adaptive_statistics boolean FALSE optimizer_capture_sql_plan_baselines boolean FALSE optimizer_capture_sql_quarantine boolean FALSE optimizer_dynamic_sampling integer 2 optimizer_features_enable string 19.1.0 optimizer_ignore_hints boolean FALSE optimizer_ignore_parallel_hints boolean FALSE optimizer_index_caching integer 0 optimizer_index_cost_adj integer 100 optimizer_inmemory_aware boolean TRUE optimizer_mode string ALL_ROWS optimizer_secure_view_merging boolean TRUE optimizer_session_type string NORMAL optimizer_use_invisible_indexes boolean FALSE optimizer_use_pending_statistics boolean FALSE optimizer_use_sql_plan_baselines boolean TRUE optimizer_use_sql_quarantine boolean TRUE os_authent_prefix string ops$ os_roles boolean FALSE outbound_dblink_protocols string ALL parallel_adaptive_multi_user boolean FALSE parallel_degree_limit string CPU parallel_degree_policy string AUTO parallel_execution_message_size integer 32768 parallel_force_local boolean FALSE parallel_instance_group string parallel_max_servers integer 12 parallel_min_degree string CPU parallel_min_percent integer 0 parallel_min_servers integer 704 parallel_min_time_threshold string AUTO parallel_servers_target integer 12 parallel_threads_per_cpu integer 1 pdb_file_name_convert string pdb_lockdown string OLTP pdb_os_credential string pdb_template string permit_92_wrap_format boolean TRUE pga_aggregate_limit big integer 6000M pga_aggregate_target big integer 3000M plscope_settings string IDENTIFIERS:NONE plsql_ccflags string plsql_code_type string INTERPRETED plsql_debug boolean FALSE plsql_optimize_level integer 2 plsql_v2_compatibility boolean FALSE plsql_warnings string DISABLE:ALL pre_page_sga boolean TRUE private_temp_table_prefix string ORA$PTT_ processes integer 20000 processor_group_name string query_rewrite_enabled string TRUE query_rewrite_integrity string TRUSTED rdbms_server_dn string read_only_open_delayed boolean FALSE recovery_parallelism integer 0 recyclebin string on redo_transport_user string remote_dependencies_mode string TIMESTAMP remote_login_passwordfile string EXCLUSIVE remote_os_authent boolean FALSE remote_os_roles boolean FALSE remote_recovery_file_dest string replication_dependency_tracking boolean TRUE resource_limit boolean TRUE resource_manage_goldengate boolean FALSE resource_manager_cpu_allocation integer 92 resource_manager_plan string FORCE:OLTP_PLAN result_cache_max_result integer 5 result_cache_max_size big integer 10M result_cache_mode string MANUAL result_cache_remote_expiration integer 0 resumable_timeout integer 0 rollback_segments string scheduler_follow_pdbtz boolean FALSE sec_case_sensitive_logon boolean TRUE sec_max_failed_login_attempts integer 3 sec_protocol_error_further_action string (DROP,3) sec_protocol_error_trace_action string ALERT sec_return_server_release_banner boolean FALSE serial_reuse string disable service_names string feky1pod session_cached_cursors integer 50 session_max_open_files integer 10 sessions integer 20 sga_max_size big integer 301G sga_min_size big integer 0 sga_target big integer 8000M shadow_core_dump string partial shared_memory_address integer 0 shared_pool_reserved_size big integer 3456M shared_pool_size big integer 0 shared_server_sessions integer shared_servers integer 1 shrd_dupl_table_refresh_rate integer 60 skip_unusable_indexes boolean TRUE smtp_out_server string sort_area_retained_size integer 0 sort_area_size integer 65536 spatial_vector_acceleration boolean TRUE spfile string +DATA/FEKY1POD/PARAMETERFILE/s pfile.283.1042485307 sql92_security boolean TRUE sql_trace boolean FALSE sqltune_category string DEFAULT ssl_wallet string standby_db_preserve_states string NONE standby_file_management string MANUAL standby_pdb_source_file_dblink string standby_pdb_source_file_directory string star_transformation_enabled string FALSE statistics_level string TYPICAL streams_pool_size big integer 0 tape_asynch_io boolean TRUE target_pdbs integer 601 tde_configuration string temp_undo_enabled boolean FALSE thread integer 1 threaded_execution boolean FALSE timed_os_statistics integer 0 timed_statistics boolean TRUE timezone_version_upgrade_online boolean TRUE trace_enabled boolean TRUE tracefile_identifier string transactions integer 33092 transactions_per_rollback_segment integer 5 undo_management string AUTO undo_retention integer 1800 undo_tablespace string UNDOTBS1 unified_audit_common_systemlog string unified_audit_sga_queue_size integer 1048576 unified_audit_systemlog string uniform_log_timestamp_format boolean TRUE use_dedicated_broker boolean FALSE use_large_pages string AUTO_ONLY user_dump_dest string /u02/app/oracle/product/19.0.0 .0/dbhome_1/rdbms/log wallet_root string workarea_size_policy string AUTO xml_db_events string enable end log