# Put the library location in an ld configuration file.sudo sh -c "echo /usr/lib/oracle/12.2/client64/lib > \
/etc/ld.so.conf.d/oracle-instantclient.conf"# Update the bindings.sudo ldconfig
-- Oracle Script を有効にします。
ALTER SESSION SET "_ORACLE_SCRIPT"=true;
-- Datadog ユーザーを作成します。パスワードのプレースホルダーは、安全なパスワードに置き換えてください。
CREATE USER datadog IDENTIFIED BY <パスワード>;
-- Datadog ユーザーにアクセス権を付与します。
GRANT CONNECT TO datadog;
GRANT SELECT ON GV_$PROCESS TO datadog;
GRANT SELECT ON gv_$sysmetric TO datadog;
GRANT SELECT ON sys.dba_data_files TO datadog;
GRANT SELECT ON sys.dba_tablespaces TO datadog;
GRANT SELECT ON sys.dba_tablespace_usage_metrics TO datadog;
alter session set container = cdb$root;
CREATE USER c##datadog IDENTIFIED BY password CONTAINER=ALL;
GRANT CREATE SESSION TO c##datadog CONTAINER=ALL;
Grant select any dictionary to c##datadog container=all;
GRANT SELECT ON GV_$PROCESS TO c##datadog CONTAINER=ALL;
GRANT SELECT ON gv_$sysmetric TO c##datadog CONTAINER=ALL;
init_config:instances:## @param server - string - required## The IP address or hostname of the Oracle Database Server.#- server:localhost:1521## @param service_name - string - required## The Oracle Database service name. To view the services available on your server,## run the following query: `SELECT value FROM v$parameter WHERE name='service_names'`#service_name:<SERVICE_NAME>## @param username - string - required## The username for the Datadog user account.#username:<USERNAME>## @param password - string - required## The password for the Datadog user account.#password:<PASSWORD>
init_config:instances:## @param server - string - required## The IP address or hostname of the Oracle Database Server.#- server:localhost:1522## @param service_name - string - required## The Oracle Database service name. To view the services available on your server,## run the following query:## `SELECT value FROM v$parameter WHERE name='service_names'`#service_name:"<SERVICE_NAME>"## @param username - string - required## The username for the user account.#username:<USER>## @param password - string - required## The password for the user account.#password:"<PASSWORD>"## @param protocol - string - optional - default: TCP## The protocol to connect to the Oracle Database Server. Valid protocols include TCP and TCPS.#### When connecting to Oracle Database via JDBC, `jdbc_truststore` and `jdbc_truststore_type` are required.## More information can be found from Oracle Database's whitepaper:#### https://www.oracle.com/technetwork/topics/wp-oracle-jdbc-thin-ssl-130128.pdf#protocol:TCPS
列を表すリストです。左から右の順に並べられます。次の 2 つの必須データがあります。 a. type - 送信方法 (gauge、count など)。 b. name - メトリクス名のサフィックス。これは、完全なメトリクス名を形成するために使用されるサフィックスです。type が tag の場合、この列は、このクエリによって収集されるすべてのメトリクスに適用されるタグと見なされます。
init_config:instances:- server:localhost:1521service_name:orcl11g.us.oracle.comusername:datadogpassword:xxxxxxxjdbc_driver_path:/u01/app/oracle/product/11.2/dbhome_1/jdbc/lib/ojdbc6.jartags:- db:oraclecustom_queries:- query:| select blocking_session, username, osuser, sid, serial# as serial, wait_class, seconds_in_wait
from v_$session
where blocking_session is not NULL order by blocking_sessioncolumns:- name:blocking_sessiontype:gauge- name:usernametype:tag- name:osusertype:tag- name:sidtype:tag- name:serialtype:tag- name:wait_classtype:tag- name:seconds_in_waittype:tag
SQL> grant select on sys.v_$session to datadog;
##アクセスを検証するために DD ユーザーと接続します。
SQL> show user
USER is "DATADOG"
##ビューを表示するための同義語の作成
SQL> create synonym datadog.v_$session for sys.v_$session;
Synonym created.
SQL> select blocking_session,username,osuser, sid, serial#, wait_class, seconds_in_wait from v_$session
where blocking_session is not NULL order by blocking_session;