Oracle Database 통합은 기본적으로 데이터베이스, 테이블스페이스 및 메모리에 대한 주요 성능 메트릭을 수집합니다. 더 많은 메트릭을 수집하도록 구성을 맞춤화하여 데이터베이스 성능에 대한 자세한 특성을 제공할 수 있습니다.
아래에서 통합을 설치하는 방법과 어떤 데이터가 수집되는지 확인해보십시오.
호환성 및 요구사항
뉴렐릭 통합은 Oracle 데이터베이스 버전 11.2-23과 호환됩니다.
통합을 설치하기 전에 다음 요구 사항을 충족하는지 확인합니다.
- RHEL/CentOS/OEL 버전 7 이하를 제외하고 인프라와 호환되는 Linux 배포판
- 인프라 에이전트 설치
- 에이전트 상자의 Oracle Instant Client
ORACLE_HOME
이 루트 사용자에 대한 올바른 디렉토리로 구성된 Oracle 데이터베이스- 필수 전역 뷰에 대한 CONNECT 및 SELECT 권한이 모두 있는 Oracle 데이터베이스 사용자
- 원격 연결에서 모니터링하도록 구성된
listener.ora
파일이 있는 Oracle 데이터베이스. 기본적으로 Oracle Database는 localhost만 수신 대기.
중요
ARM64 아키텍처는 지원되지 않습니다.
설치 및 활성화
Oracle 데이터베이스 통합을 설치하려면:
인프라 에이전트를 설치하고
INTEGRATION_FILE_NAME
변수를nri-oracledb
로 바꿉니다.디렉터리를 통합 폴더로 변경합니다.
bash$cd /etc/newrelic-infra/integrations.d샘플 구성 파일 복사:
bash$sudo cp oracledb-config.yml.sample oracledb-config.yml구성 설정에 설명된 대로
oracledb-config.yml
파일을 수정합니다.
추가적인 참고 사항:
- Advanced: tarball 파일에서 통합을 설치하는 것도 가능합니다. 이렇게 하면 설치 및 구성 프로세스를 완전히 제어할 수 있습니다.
- On-host integrations do not automatically update. 최상의 결과를 얻으려면 통합 패키지와 인프라 에이전트를 정기적으로 업데이트하십시오.
이 문서가 설치하는데 도움이 되셨나요?
구성
Oracle DB 서버 활성화
Oracle 데이터베이스에서 다음 명령문을 실행하여 새 사용자를 생성하고 사용자 권한을 할당합니다. USERNAME과 유사한 사용자별 값을 바꿔야 합니다.
보유한 데이터베이스의 유형을 선택합니다. 사용자 유지 관리 질문에 대한 지원은 Oracle 문서를 참조하거나 시스템 또는 데이터베이스 관리자에게 문의하시기 바랍니다.
사용자에게
CONNECT
권한을 부여합니다.GRANT CONNECT TO USERNAME;다음 전역 뷰에서 사용자에게
SELECT
권한을 부여합니다.cdb_data_files
cdb_pdbs
cdb_users
gv_$sysmetric
gv_$pgastat
gv_$instance
gv_$filestat
gv_$parameter
sys.dba_data_files
gv_$session
gv_$sesstat
gv_$statname
gv_$rowcache
gv_$sga
gv_$sysstat
v_$database
gv_$librarycache
gv_$sqlarea
gv_$system_event
dba_tablespaces
gv_$session_wait
gv_$rollstat
v_$instance
다음 SQL 문을 하나의 스크립트에서 함께 또는 개별적으로 실행할 수 있습니다.
GRANT SELECT ON cdb_data_files TO USERNAME;GRANT SELECT ON cdb_pdbs TO USERNAME;GRANT SELECT ON cdb_users TO USERNAME;GRANT SELECT ON gv_$sysmetric TO USERNAME;GRANT SELECT ON gv_$pgastat TO USERNAME;GRANT SELECT ON gv_$instance TO USERNAME;GRANT SELECT ON gv_$filestat TO USERNAME;GRANT SELECT ON gv_$parameter TO USERNAME;GRANT SELECT ON sys.dba_data_files TO USERNAME;GRANT SELECT ON DBA_TABLESPACES TO USERNAME;GRANT SELECT ON DBA_TABLESPACE_USAGE_METRICS TO USERNAME;GRANT SELECT ON gv_$session TO USERNAME;GRANT SELECT ON gv_$sesstat TO USERNAME;GRANT SELECT ON gv_$statname TO USERNAME;GRANT SELECT ON gv_$rowcache TO USERNAME;GRANT SELECT ON gv_$sga TO USERNAME;GRANT SELECT ON gv_$sysstat TO USERNAME;GRANT SELECT ON v_$database TO USERNAME;GRANT SELECT ON gv_$librarycache TO USERNAME;GRANT SELECT ON gv_$sqlarea TO USERNAME;GRANT SELECT ON gv_$system_event TO USERNAME;GRANT SELECT ON dba_tablespaces TO USERNAME;GRANT SELECT ON gv_$session_wait TO USERNAME;GRANT SELECT ON gv_$rollstat TO USERNAME;GRANT SELECT ON v_$instance TO USERNAME;
PDB 메트릭을 수집하려면 다음을 실행하여 gv$con_sysmetric
권한을 부여합니다.
GRANT SELECT ON gv$con_sysmetric TO USERNAME;
통합 구성
설치 방법에 따라 통합을 설정하는 몇 가지 방법이 있습니다.
- Amazon ECS를 통해 활성화된 경우: ECS에서 실행 중인 서비스 모니터링을 참조하십시오.
- 호스트에 설치된 경우: 통합의 YAML 구성 파일
oracledb-config.yml
에서 구성을 수정합니다.
통합의 YAML 포맷 설정에서는 필요한 로그인 크리덴셜을 정하고 데이터 수집 방법을 설정할 수 있습니다. 변경해야 하는 옵션은 기본 설정과 선호하는 설정에 따라 다릅니다.
구성 파일에는 interval
, timeout
, inventory_source
같은 모든 통합에 적용할 수 있는 공통 설정이 있습니다. 이러한 공통 설정에 자세한 내용은 구성 포맷 문서를 참조하십시오.
중요
레거시 구성/정의 파일을 계속 사용하고 있는 경우 이 문서의 도움말을 참조하십시오.
Oracle DB와 관련된 특정 설정은 구성 파일의 env
섹션을 사용하여 정의됩니다. 이러한 설정은 Oracle DB 인스턴스에 대한 연결과 기타 보안 설정 및 기능을 제어합니다. 유효한 설정 목록은 이 문서의 다음 섹션에 설명되어 있습니다.
Oracle DB 인스턴스 설정
Oracle DB 통합은 메트릭(M) 및 인벤토리(I) 정보를 모두 수집합니다. 표에서 각 수집에 사용할 수 있는 설정에 대한 Applies To 열을 사용합니다.
' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '
Setting | 설명 | 기본 | Applies To |
---|---|---|---|
SERVICE_NAME | Oracle 인스턴스의 서비스 이름입니다. | N/A | M/I |
HOSTNAME | Oracle DB가 실행 중인 호스트 이름 또는 IP입니다. | 127.0.0.1 | M/I |
PORT | Oracle DB가 수신하는 포트입니다. | 1521 | M/I |
USERNAME | Oracle DB 서버에 액세스하기 위한 사용자 이름입니다. | N/A | M/I |
PASSWORD | 지정된 사용자의 비밀번호입니다. | N/A | M/I |
CONNECTION_STRING |
| N/A | M/I |
ORACLE_HOME |
| N/A | M/I |
TABLESPACES | 수집할 테이블스페이스의 JSON 배열입니다. 생략하면 모든 테이블스페이스를 수집합니다. 비어 있으면 테이블스페이스 메트릭 수집을 건너뜁니다. | [] | M |
IS_SYS_DBA | 인증하는 사용자에게 SysDBA 권한이 있는지 여부를 나타냅니다. | 거짓 | M |
IS_SYS_OPER | 인증하는 사용자에게 SysOper 권한이 있는지 여부를 나타냅니다. | 거짓 | M |
EXTENDED_METRICS | 확장 메트릭을 수집할지 여부를 나타냅니다. 아래 표에서 확장된 메트릭을 확인합니다. | 거짓 | M |
SKIP_METRICS_GROUPS | 수집된 메트릭은 데이터를 가져오는 데 사용된 쿼리에 기반해 함께 그룹화됩니다. 이러한 메트릭 그룹은 여기에 나열되며 JSON 배열 포맷의 | [] | M |
DISABLE_CONNECTION_POOL | 연결 풀링을 비활성화합니다. Oracle DB에 대한 새 연결을 설정하려고 할 때 통합에 오류가 발생하는 경우에만 사용합니다. | 거짓 | M |
MAX_OPEN_CONNECTIONS | 통합에 의해 열린 최대 동시 연결 수입니다. | 5 | M |
SYS_METRICS_SOURCE | 애플리케이션 컨테이너 메트릭을 수집하려면 | ' ' | M |
CUSTOM_METRICS_QUERY | 커스텀 메트릭을 수집하기 위한 SQL 쿼리입니다. 아래 예시를 참조하십시오. | N/A | M |
CUSTOM_METRICS_CONFIG | 커스텀 메트릭을 수집하기 위한 하나 이상의 SQL 쿼리가 있는 YAML 구성입니다. 아래 예시를 참조하십시오. | 거짓 | M |
METRICS | 메트릭 전용 수집을 활성화하려면 | 거짓 | |
INVENTORY | 인벤토리 전용 수집을 활성화하려면 | 거짓 |
이 설정 값들은 여러 가지 방법으로 정의할 수 있습니다.
- 값을 구성 파일에 직접 추가합니다. 이는 가장 일반적인 방법입니다.
{{}}
표기를 사용하여 환경 변수의 값을 대체합니다. 이를 위해서는 인프라 에이전트 1.14.0 이상이 필요합니다. 이에 대한 자세한 내용은 인프라 에이전트 패스스루 환경 변수에 대한 자세한 내용을 참조하십시오.- 비밀 관리를 사용하여 비밀번호 같은 민감한 정보를 보호하고 이러한 정보가 구성 파일에 일반 텍스트로 노출되지 않도록 합니다. 보다 자세한 내용은 비밀 관리를 참조하십시오.
레이블 및 커스텀 속성
메트릭을 레이블로 장식할 수도 있습니다. 레이블을 사용하면 메트릭에 키/값 쌍 속성을 추가하여 메트릭을 쿼리, 필터링 또는 그룹화할 수 있습니다.
기본 샘플 구성 파일에 레이블의 예가 포함되어 있지만, 선택 사항입니다. 새 항목을 제거, 수정 또는 추가할 수 있습니다.
labels: env: production role: load_balancer
구성 예시
데이터의 찾기 및 사용
뉴렐릭에서 통합 데이터를 찾으려면 one.newrelic.com > All capabilities > Infrastructure > Third-party services로 이동하여 Oracle 데이터베이스 통합 링크 중 하나를 선택합니다.
쿠버네티스 데이터는 다음 이벤트에 연결됩니다.
OracleDatabaseSample
OracleTablespaceSample
데이터를 찾고 사용하는 자세한 방법은 통합 데이터에 대한 이해를 참조하십시오.
메트릭 데이터
Oracle Database 통합은 다음 메트릭 데이터 속성을 수집합니다. 각 메트릭 이름에는 disk.
또는 memory.
같이 카테고리 표시자와 마침표가 접두사로 붙습니다.
데이터베이스 메트릭
이러한 속성은 OracleDatabaseSample
이벤트 유형을 쿼리하여 찾을 수 있습니다.
메트릭 | 설명 | 확장 |
---|---|---|
| 활성화된 병렬 세션입니다. | |
| 활성화된 직렬 세션입니다. | |
| 평균 활성화된 세션입니다. | |
| 초당 체크포인트입니다. | |
| 초당 백그라운드 CPU 사용량입니다. | |
| 초당 백그라운드 시간입니다. | |
| 초당 DB 블록 변경 수입니다. | |
| 트랜잭션당 DB 블록 변경 수입니다. | |
| 사용자 호출당 DB 블록 변경 수입니다. | |
| 초당 가져온 DB 블록입니다. | |
| 트랜잭션당 가져온 DB 블록입니다. | |
| 사용자 호출당 가져온 DB 블록입니다. | |
| 초당 분할된 분기 노드 분할 수입니다. | |
| 트랜잭션당 분기 노드 분할 수입니다. | |
| 초당 일관된 읽기 변경 수입니다. | |
| 트랜잭션당 일관된 읽기 변경 수입니다. | |
| 초당 일관된 읽기를 가져온 수입니다. | |
| 트랜잭션당 일관된 읽기를 가져온 수입니다. | |
| CPU 시간 비율입니다. | |
| 초당 CPU 사용량입니다. | |
| 트랜잭션당 CPU 사용량입니다. | |
| 초당 생성된 CR 블록입니다. | |
| 트랜잭션당 생성된 CR 블록입니다. | |
| 초당 적용된 CR 실행 취소 레코드입니다. | |
| 트랜잭션당 적용된 CR 실행 취소 레코드입니다. | |
| 현재 로그온 수입니다. | |
| 현재 열려 있는 커서 수입니다. | |
| 커서 캐시 적중률입니다. | |
| 초당 데이터베이스 시간입니다. | |
| 초당 DBWR 체크포인트 수입니다. | |
| 초당 대기열 교착 상태 수입니다. | |
| 트랜잭션당 대기열 교착 상태 수입니다. | |
| 초당 대기열 요청 수입니다. | |
| 트랜잭션당 대기열 요청 수입니다. | |
| 초당 대기열 타임아웃입니다. | |
| 트랜잭션당 대기열 타임아웃입니다. | |
| 초당 대기열 대기 수입니다. | |
| 트랜잭션당 대기열 대기 수입니다. | |
| 초당 실행 수입니다. | |
| 트랜잭션당 실행 수입니다. | |
| 사용자 호출당 실행 수입니다. | |
| 초당 전체 인덱스 스캔 수입니다. | |
| 트랜잭션당 전체 인덱스 스캔 수입니다. | |
| 초당 수신된 GC CR 블록 수입니다. | |
| 트랜잭션당 수신된 GC CR 블록 수입니다. | |
| 초당 수신된 GC 현재 블록 수입니다. | |
| 트랜잭션당 수신된 GC 현재 블록 수입니다. | |
| 전역 캐시 평균 CR 가져오기 시간입니다. | |
| 전역 캐시 평균 현재 가져오기 시간입니다. | |
| 초당 하드 구문 분석 수입니다. | |
| 트랜잭션당 하드 구문 분석 수입니다. | |
| 초당 호스트 CPU 사용량입니다. | |
| 호스트 CPU 사용률(백분율)입니다. | |
| 초당 리프 노드 분할 수입니다. | |
| 트랜잭션당 리프 노드 분할 수입니다. | |
| 라이브러리 커서 캐시 적중률입니다. | |
| 라이브러리 캐시 미스율입니다. | |
| 초당 논리적 읽기 수입니다. | |
| 트랜잭션당 논리적 읽기 수입니다. | |
| 초당 로그온 수입니다. | |
| 트랜잭션당 로그온 수입니다. | |
| 초당 긴 테이블 스캔 수입니다. | |
| 트랜잭션당 긴 테이블 스캔 수입니다. | |
| 초당 열린 커서 수입니다. | |
| 트랜잭션당 열린 커서 수입니다. | |
| 현재 OS 로드입니다. | |
| 초당 구문 분석 실패 횟수입니다. | |
| 트랜잭션당 구문 분석 실패 횟수입니다. | |
| PGA 캐시 적중률입니다. | |
| 프로세스 제한 백분율입니다. | |
| 초당 재귀 호출 수입니다. | |
| 트랜잭션당 재귀 호출 수입니다. | |
| 초당 리두 쓰기 수입니다. | |
| 트랜잭션당 리두 쓰기 수입니다. | |
| 트랜잭션당 응답 시간입니다. | |
| 행 캐시 적중률입니다. | |
| 행 캐시 미스율입니다. | |
| 정렬당 행 수입니다. | |
| 세션 수입니다. | |
| 세션 제한율입니다 | |
| 공유 풀 여유율입니다. | |
| 소프트 파싱률입니다. | |
| 사용자 호출당 총 정렬입니다. | |
| SQL 서비스 응답 시간입니다. | |
| 스트림 풀 사용률입니다. | |
| 사용자 호출당 총 테이블 스캔 수입니다. | |
| 초당 총 인덱스 스캔 수입니다. | |
| 트랜잭션당 총 인덱스 스캔 수입니다. | |
| 초당 총 구문 분석 횟수입니다. | |
| 트랜잭션당 총 구문 분석 횟수입니다. | |
| 초당 총 테이블 스캔 수입니다. | |
| 트랜잭션당 총 테이블 스캔 수입니다. | |
| 로그온당 트랜잭션입니다. | |
| 초당 사용자 호출 수입니다. | |
| 트랜잭션당 사용자 호출 수입니다. | |
| 사용자 호출률입니다. | |
| 사용자 커밋률입니다. | |
| 사용자가 초당 커밋 읽기 수입니다. | |
| 사용자 제한률입니다. | |
| 트랜잭션당 사용자 롤백 수입니다. | |
| 초당 사용자 롤백 수입니다. | |
| 초당 적용된 사용자 롤백 실행 취소 레코드입니다. | |
| 트랜잭션당 적용된 사용자 롤백 실행 취소 레코드 수입니다. | |
| 데이터베이스 대기 시간 비율입니다. | |
| 캡처된 사용 통화 | |
| 구문 분석 비율 없이 실행 | |
| 초당 로그온 | |
| 초당 물리적 읽기 바이트 | |
| 초당 물리적 읽기 IO 요청 | |
| 초당 물리적 읽기 | |
| 초당 물리적 쓰기 바이트 | |
| 초당 물리적 쓰기 | |
| 블록 읽기 수입니다. | |
| 블록 쓰기 수입니다. | |
| 사용자 호출당 논리적 읽기 수입니다. | |
| 초당 디렉트 lob 물리적 읽기 수 입니다. | |
| 초당 디렉트 lob 물리적 쓰기 수 입니다. | |
| 초당 물리적 읽기의 총 바이트입니다. | |
| 초당 물리적 읽기의 총 I/O 요청 수입니다. | |
| 물리적 초당 직접 읽기 수입니다. | |
| 초당 물리적 쓰기의 총 바이트입니다. | |
| 초당 물리적 쓰기의 I/O 요청 수입니다. | |
| 초당 디렉트 물리적 쓰기 수 입니다. | |
| 초당 물리적 쓰기의 총 I/O 요청 수입니다. | |
| 총 물리적 읽기 수입니다. | |
| 파일 읽기 시간의 양입니다. | |
| 초당 디스크 정렬입니다. | |
| 트랜잭션당 디스크 정렬입니다. | |
| 사용된 임시 공간입니다. | |
| 총 물리적 쓰기 수입니다. | |
| 파일 쓰기 시간의 양입니다. | |
|
| |
| 장기 실행(> 60초) 쿼리 수입니다. | |
| 버퍼 캐시 적중률입니다. | |
| 손상된 전역 캐시 블록입니다. | |
| 손실된 전역 캐시 블록입니다. | |
| 인스턴스에서 할당한 현재 PGA 메모리 양입니다. | |
| 자동 모드에서 실행되는 작업 영역의 최대 크기입니다. | |
| 운영 체제로 다시 해제할 수 있는 모든 프로세스의 PGA 메모리 바이트 수입니다. | |
| 현재 작업 영역에서 사용하는 PGA 메모리의 양입니다. 이 숫자는 PGA 메모리의 다른 소비자(예: PL/SQL 또는 Java)가 사용하는 메모리 양을 결정하는 데 사용할 수 있습니다. | |
| 리두 할당 적중률입니다. | |
| 초당 리두로 생성된 바이트입니다. | |
| 트랜잭션당 리두로 생성된 바이트입니다. | |
| 메모리 정렬률입니다. | |
| 초당 I/O 메가바이트입니다. | |
| 초당 I/O 요청 수입니다. | |
| 초당 네트워크 트래픽 볼륨입니다. | |
| 트랜잭션당 디렉트 lob 물리적 읽기 수입니다. | |
| 트랜잭션당 디렉트 lob 물리적 쓰기 수입니다. | |
| 트랜잭션당 디렉트 물리적 읽기 수입니다. | |
| 트랜잭션당 물리적 읽기 수입니다. | |
| 트랜잭션당 디렉트 물리적 쓰기 수입니다. | |
| 트랜잭션당 물리적 쓰기 수입니다. | |
| 초당 사용자 트랜잭션 수입니다. | |
| 리두 로그 파일 전환 이벤트의 수입니다. | |
| 아카이브가 필요한 리두 로그 파일 전환 이벤트의 수입니다. | |
| 불완전한 리두 로그 파일 스위치 이벤트 체크포인트의 수입니다. | |
| 리두 로그 대기 횟수입니다. | |
| 가져온 롤백 세그먼트 수입니다. | |
| 롤백 세그먼트에 대한 대기 비율입니다. | |
| 롤백 세그먼트 대기 수입니다. | |
| SGA 버퍼 사용 대기 횟수입니다. | |
| SGA 고정 크기입니다. | |
| 검사된 SGA 여유 버퍼 수입니다. | |
| SGA 여유 버퍼 대기 수입니다. | |
| SGA의 적중률입니다. | |
| SGA 로그 버퍼에 대한 할당 재시도 비율입니다. | |
| SGA 로그 버퍼에 대한 리두 할당 비율입니다. | |
| SGA 로그 버퍼의 리두 항목 수입니다. | |
| SGA 로그 버퍼를 위한 버퍼 공간 대기 수입니다. | |
| SGA Redo 버퍼(바이트)입니다. | |
| SGA 공유 풀 사전(dict) 캐시에 대한 미스율입니다. | |
| SGA 공유 풀 라이브러리 캐시의 적중률입니다. | |
| SGA 공유 풀 라이브러리 캐시에 대한 리로드 비율입니다. | |
| 명령문당 SGA 캐시 가능 메모리(바이트)입니다. | |
| 사용자당 SGA 캐시 가능 메모리(바이트)입니다. | |
| UGA(사용자 전역 영역)의 총 메모리입니다. | |
| 디스크 사용량을 정렬(바이트)합니다. | |
| 메모리 사용량을 정렬(바이트)합니다. |
테이블스페이스 메트릭
Oracle Database 통합은 다음 테이블스페이스 메트릭을 수집합니다. 이러한 속성은 OracleTablespaceSample
이벤트 유형을 쿼리하여 찾을 수 있습니다. 읽기 전용 대기 데이터베이스에서는 테이블스페이스 사용량 메트릭을 사용할 수 없습니다. 이 제한 사항에 대한 자세한 내용은 Oracle Knowledgebase를 참조하십시오.
메트릭 | 설명 | 확장 |
---|---|---|
| 테이블스페이스 오프라인 상태에 대한 부울 값입니다. | |
| 오프라인 상태인 PDB 데이터 파일의 수입니다. | |
| 오프라인 상태인 CDB 데이터 파일의 수입니다. | |
| 쓰기 불가능 상태의 PDB 데이터 파일 수입니다. | |
| 사용된 테이블스페이스의 양(바이트)입니다. | |
| 총 예약된 테이블스페이스(바이트)입니다. | |
| 전체 테이블스페이스에 대한 사용 비율입니다. |
인벤토리 데이터
Oracle 데이터베이스 통합은 Oracle 데이터베이스의 구성 파라미터를 캡처합니다. 데이터는 인벤토리 페이지의 config/oracledb 소스 아래에있습니다. 인벤토리 데이터에 대한 자세한 내용은 통합 데이터에 대한 이해를 참조하십시오.
통합은 다음 Oracle Database 구성 파라미터에 대한 데이터를 캡처합니다.
문제 해결
문제 해결 팁:
소스 코드 확인
이 통합은 오픈소스 소프트웨어입니다. 소스 코드를 탐색하고 개선 사항을 보내거나 고유한 포크를 만들어 빌드할 수 있다는 의미입니다.