Our team is developing basic monitoring tool for SQL Server and Oracle. We are now looking for this output in Oracle.
{
"name": "InfraData",
"time": "2018-01-04T19:49:07.838Z",
"timeInMin": "2018-01-04T19:49:00Z",
"sampleRate": 0,
"iKey": "sq05058e-89te-50eb-a701-70e1f892191g",
"data_baseType": "Sql_Performance",
"machine_name": "HPSTSS02",
"ip_address": "10.0.2.37",
"logged_in_user": "Administrator",
"agent_version": "VS212017121d0",
"output_type": "latencydata",
"database_name": "CABS_TEST",
"sql_Database_DB_FileType": "DATA File - Location C:~Program Files~Microsoft SQL Server~MSSQL12.MSSQLSERVER~MSSQL~DATA~CABS_TEST.mdf",
"sql_Database_DB_readLatency": 7,
"sql_Database_DB_writeLatency": 0,
"sql_Database_DB_Latency": 7,
"sql_db_num_of_reads": 455,
"sql_db_num_of_writes": 1,
"sql_db_size_on_disk_bytes": 536870912,
"id": "c0cd6c53-7869-44c8-8bd6-11a1b0724cce",
"_version_": 1588682190333411300,
"timestamp": "2018-01-04T17:03:21.839Z"
},
I made a query in oracle using some subquery but there are several bugs, can someone help me with this. I am totally lost.
column GET_HOST_NAME format a25
column GET_HOST_ADDRESS format a20
select name,sysdate, to_char(sysdate,'HH24:MI:SS AM') as timeInMin,
select sum(SAMPLESIZE) as sampleRate from IND$,
(select max(banner) from v$version) as data_baseType,
(SELECT UTL_INADDR.get_host_name from dual) as machine_name,(select UTL_INADDR.get_host_address from dual) as ip_address,
(select user from dual) as logged_in_user, (select name from v$database) as database_name,
(select FILE_NAME sql_Database_DB_FileType from dba_data_files where FILE_ID = (select min(FILE#) from sys.file$)) as sql_Database_DB_FileType,
(select max(READ_LATENCY) as oracle_Database_DB_readLatency ,max(WRITE_LATENCY) as sql_Database_DB_writeLatency from V_$IOSTAT_NETWORK),
(select (sum(READ_LATENCY)+sum(WRITE_LATENCY)) as sql_Database_DB_Latency from V_$IOSTAT_NETWORK) from V_$IOSTAT_NETWORK,dual,v$database;
select sum(PHYSICAL_READS_TOTAL) as Oracle_db_num_of_reads,sum(PHYSICAL_WRITES_TOTAL) as Oracle_db_num_of_writes from DBA_HIST_SEG_STAT;
select ( select sum(bytes)/1024/1024/1024 data_size from dba_data_files ) + ( select nvl(sum(bytes),0)/1024/1024/1024 temp_size from dba_temp_files ) + ( select sum(bytes)/1024/1024/1024 redo_size from sys.v_$log ) + ( select sum(BLOCK_SIZE*FILE_SIZE_BLKS)/1024/1024/1024 controlfile_size from v$controlfile) "Size in GB" from dual;