OS 터미널 접속 없이 오라클 접속을 통해 OS CPU 사용율 모니터링 하기
간혹 사이트 지원을 나가다 보면 OS 접속을 허용하지 않는 곳이 있다.
그럴 경우 OS 자원에 대한 사용율을 모니터링 할 필요가 있을 때 꽤나 답답한 상황에 부딫힐 수 있다.
이럴 경우 아래 방식으로 오라클 클라이언트 접속으로 OS CPU 사용율을 모니터링 할 수 있다.
오라클에서 제공하는 딕셔너리 정보를 사용해야하기 때문에 이 역시 사이트에서 허용하지 않는 정책이라면
이 부분도 사용할 수 없다.
허나 이런 경우라면 도데체 어떤 방식으로 지원하라고 하는건지?
이런 부분은 협의를 해야할 것이다.
1. Window 환경
powershell 을 사용할 수 있는 환경이어야한다.
또 powershell에서 스크립트를 수행할 수 있는 보안 정책으로 되어 있어야 한다.
그리고 powershell을 관리자 권한으로 실행해야 한다.
먼저 첨부된 파일의 압축을 풀면 아래와 같은 파일이 나타납니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
|
PS C:\Users\ecros\Documents\scripts\mp_os_cpu_mon\mp_os_cpu_mon> dir
디렉터리: C:\Users\ecros\Documents\scripts\mp_os_cpu_mon\mp_os_cpu_mon
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2021-01-07 오후 3:47 11417 cpu_usage.sql
-a---- 2021-01-07 오후 5:19 270 mp_os_cpu.ps1
-a---- 2021-01-14 오후 4:23 213 mp_os_cpu.sh
-a---- 2021-01-07 오후 5:21 72 mp_os_cpu_mon.ps1
-a---- 2021-01-14 오후 4:17 40 mp_os_cpu_mon.sh
|
cs |
mp_os_cpu_mon.ps1 을 아래와 같이 실행하면 결과를 확인할 수 있습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
PS C:\Users\ecros\Documents\scripts\mp_os_cpu_mon\mp_os_cpu_mon> .\mp_os_cpu_mon.ps1 system oracle mprac 2
-----------------------------------------------------------------------------------
| 20210114 17:05:59 |
-----------------------------------------------------------------------------------
|No| Name |CPU[%]|Load|Vi[mb]|Vo[mb]|TotalMem[mb]|FreeMem[mb]|CPU[core]|
-----------------------------------------------------------------------------------
| 1| MPRAC1(OPEN) | 5 |1.7 | 0 | 0 | 9675 | 416(0) | 4 |
| 2| MPRAC2(OPEN) | 5 |1.9 | 0 | 0 | 9675 | 810(-10) | 4 |
-----------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
| 20210114 17:06:05 |
-----------------------------------------------------------------------------------
|No| Name |CPU[%]|Load|Vi[mb]|Vo[mb]|TotalMem[mb]|FreeMem[mb]|CPU[core]|
-----------------------------------------------------------------------------------
| 1| MPRAC1(OPEN) | 5 |1.8 | 0 | 0 | 9675 | 416(0) | 4 |
| 2| MPRAC2(OPEN) | 5 | 2 | 0 | 0 | 9675 | 814(3) | 4 |
-----------------------------------------------------------------------------------
|
cs |
아규먼트를 4개 가지며 의미는 아래와 같다.
mp_os_cpu_mon.ps1 DB유저 DB패스워드 TNS명칭 반복횟수
2. Linux 환경
위에서 압축을 푼 파일 중 mp_os_cpu.sh , mp_os_cpu_mon.sh , cpu_usage.sql 파일을 사용한다.
shell 스트립트에 실행가능하게 권한을 부여한다.
1
|
MPRAC2:/home/oracle/scripts/mp_os_cpu_mon> chmod +x mp_os_cpu*.sh
|
cs |
아래와 같이 스크립트를 수행해 준다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
MPRAC2:/home/oracle/scripts/mp_os_cpu_mon> sh mp_os_cpu_mon.sh system oracle mprac 3
-----------------------------------------------------------------------------------
| 20210114 17:32:29 |
-----------------------------------------------------------------------------------
|No| Name |CPU[%]|Load|Vi[mb]|Vo[mb]|TotalMem[mb]|FreeMem[mb]|CPU[core]|
-----------------------------------------------------------------------------------
| 1| MPRAC1(OPEN) | 5 |3.4 | 0 | 0 | 9675 | 313(-5) | 4 |
| 2| MPRAC2(OPEN) | 6 | 3 | 0 | 0 | 9675 | 910(-2) | 4 |
-----------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
| 20210114 17:32:35 |
-----------------------------------------------------------------------------------
|No| Name |CPU[%]|Load|Vi[mb]|Vo[mb]|TotalMem[mb]|FreeMem[mb]|CPU[core]|
-----------------------------------------------------------------------------------
| 1| MPRAC1(OPEN) | 6 |3.2 | 0 | 0 | 9675 | 311(-1) | 4 |
| 2| MPRAC2(OPEN) | 5 | 3 | 0 | 0 | 9675 | 909(0) | 4 |
-----------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
| 20210114 17:32:40 |
-----------------------------------------------------------------------------------
|No| Name |CPU[%]|Load|Vi[mb]|Vo[mb]|TotalMem[mb]|FreeMem[mb]|CPU[core]|
-----------------------------------------------------------------------------------
| 1| MPRAC1(OPEN) | 8 |2.9 | 0 | 0 | 9675 | 312(0) | 4 |
| 2| MPRAC2(OPEN) | 5 |2.8 | 0 | 0 | 9675 | 909(0) | 4 |
-----------------------------------------------------------------------------------
|
cs |
window와 마찬가지로 4개의 아규먼트를 가진다. 의미는 아래와 같다.
mp_os_cpu_mon.sh DB유저 DB패스워드 TNS명칭 반복횟수
감사 해요. case1 결과가 cpu % 가 정확 하게 잘 보이네요