

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengatur dan membatalkan pengaturan peristiwa diagnostik sistem
<a name="Appendix.Oracle.CommonDBATasks.SystemEvents"></a>

Untuk mengatur dan membatalkan pengaturan peristiwa diagnostik pada tingkat sesi, Anda dapat menggunakan pernyataan `ALTER SESSION SET EVENTS` Oracle SQL. Namun, untuk menyetel peristiwa di tingkat sistem, Anda tidak dapat menggunakan Oracle SQL. Sebaliknya, gunakan prosedur peristiwa sistem dalam paket `rdsadmin.rdsadmin_util`. Prosedur peristiwa sistem tersedia dalam versi mesin berikut:
+ Semua versi Oracle Database 21c
+ Versi 19.0.0.ru-2020-10.rur-2020-10.rur-2020-10.r1 dan Oracle Database 19c yang lebih baru

  *Untuk informasi selengkapnya, lihat [Versi 19.0.0.0.ru-2020-10.rur-2020-10.r1 di Catatan Rilis Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-19-0.html#oracle-version-RU-RUR.19.0.0.0.ru-2020-10.rur-2020-10.r1) for Oracle*

**penting**  
Secara internal, paket `rdsadmin.rdsadmin_util` menetapkan peristiwa menggunakan pernyataan `ALTER SYSTEM SET EVENTS`. Pernyataan `ALTER SYSTEM` tidak didokumentasikan di dokumentasi Oracle Database. Beberapa peristiwa diagnostik sistem dapat menghasilkan informasi pelacakan dalam jumlah besar, menyebabkan pertentangan, atau memengaruhi ketersediaan basis data. Sebaiknya uji peristiwa diagnostik tertentu dalam basis data nonproduksi, dan hanya tetapkan peristiwa dalam basis data produksi Anda berdasarkan panduan Dukungan Oracle.

## Mencantumkan peristiwa diagnostik sistem yang diizinkan
<a name="Appendix.Oracle.CommonDBATasks.SystemEvents.listing"></a>

Untuk mencantumkan peristiwa sistem yang dapat Anda tetapkan, gunakan prosedur `rdsadmin.rdsadmin_util.list_allowed_system_events` Amazon RDS. Prosedur ini tidak menerima parameter.

Contoh berikut mencantumkan semua peristiwa sistem yang dapat Anda tetapkan.

```
SET SERVEROUTPUT ON
EXEC rdsadmin.rdsadmin_util.list_allowed_system_events;
```

Output sampel berikut mencantumkan nomor peristiwa dan deskripsinya. Gunakan prosedur `set_system_event` Amazon RDS untuk mengatur peristiwa dan `unset_system_event` untuk membatalkan pengaturannya.

```
604   - error occurred at recursive SQL level
942   - table or view does not exist
1401  - inserted value too large for column
1403  - no data found
1410  - invalid ROWID
1422  - exact fetch returns more than requested number of rows
1426  - numeric overflow
1427  - single-row subquery returns more than one row
1476  - divisor is equal to zero
1483  - invalid length for DATE or NUMBER bind variable
1489  - result of string concatenation is too long
1652  - unable to extend temp segment by  in tablespace
1858  - a non-numeric character was found where a numeric was expected
4031  - unable to allocate  bytes of shared memory ("","","","")
6502  - PL/SQL: numeric or value error
10027 - Specify Deadlock Trace Information to be Dumped
10046 - enable SQL statement timing
10053 - CBO Enable optimizer trace
10173 - Dynamic Sampling time-out error
10442 - enable trace of kst for ORA-01555 diagnostics
12008 - error in materialized view refresh path
12012 - error on auto execute of job
12504 - TNS:listener was not given the SERVICE_NAME in CONNECT_DATA
14400 - inserted partition key does not map to any partition
31693 - Table data object  failed to load/unload and is being skipped due to error:
```

**catatan**  
Daftar peristiwa sistem yang diizinkan dapat berubah seiring waktu. Untuk memastikan bahwa Anda memiliki daftar terbaru peristiwa yang memenuhi syarat, gunakan `rdsadmin.rdsadmin_util.list_allowed_system_events`.

## Menyetel peristiwa diagnostik sistem
<a name="Appendix.Oracle.CommonDBATasks.SystemEvents.setting"></a>

Untuk menyetel peristiwa sistem, gunakan prosedur `rdsadmin.rdsadmin_util.set_system_event` Amazon RDS. Anda hanya dapat menyetel peristiwa yang tercantum dalam output dari `rdsadmin.rdsadmin_util.list_allowed_system_events`. Prosedur `set_system_event` menerima parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_event`  |  number  |  —  |  Ya  |  Nomor peristiwa sistem. Nilai harus salah satu nomor event yang dilaporkan oleh `list_allowed_system_events`.  | 
|  `p_level`  |  number  |  —  |  Ya  |  Level peristiwa. Lihat dokumentasi Oracle Database atau Dukungan Oracle untuk deskripsi berbagai nilai level.  | 

Prosedur `set_system_event` membangun dan menjalankan pernyataan wajib `ALTER SYSTEM SET EVENTS` yang sesuai dengan prinsip berikut:
+ Tipe peristiwa (`context` atau `errorstack`) ditentukan secara otomatis.
+ Pernyataan dalam formulir `ALTER SYSTEM SET EVENTS 'event LEVEL event_level'` menetapkan peristiwa konteks. Notasi ini setara dengan `ALTER SYSTEM SET EVENTS 'event TRACE NAME CONTEXT FOREVER, LEVEL event_level'`.
+ Pernyataan dalam formulir `ALTER SYSTEM SET EVENTS 'event ERRORSTACK (event_level)'` mengatur peristiwa tumpukan kesalahan. Notasi ini setara dengan `ALTER SYSTEM SET EVENTS 'event TRACE NAME ERRORSTACK LEVEL event_level'`.

Contoh berikut menetapkan peristiwa 942 di level 3, dan peristiwa 10442 di level 10. Contoh output disertakan.

```
SQL> SET SERVEROUTPUT ON
SQL> EXEC rdsadmin.rdsadmin_util.set_system_event(942,3);
Setting system event 942 with: alter system set events '942 errorstack (3)'

PL/SQL procedure successfully completed.

SQL> EXEC rdsadmin.rdsadmin_util.set_system_event(10442,10);
Setting system event 10442 with: alter system set events '10442 level 10'

PL/SQL procedure successfully completed.
```

## Mencantumkan peristiwa diagnostik sistem yang ditetapkan
<a name="Appendix.Oracle.CommonDBATasks.SystemEvents.listing-set"></a>

Untuk mencantumkan peristiwa sistem yang sudah ditetapkan saat ini, gunakan prosedur `rdsadmin.rdsadmin_util.list_set_system_events` Amazon RDS. Prosedur ini melaporkan hanya peristiwa yang ditetapkan pada tingkat sistem oleh `set_system_event`.

Contoh berikut mencantumkan peristiwa sistem aktif.

```
SET SERVEROUTPUT ON
EXEC rdsadmin.rdsadmin_util.list_set_system_events;
```

Output sampel berikut menunjukkan daftar peristiwa, tipe peristiwa, level peristiwa yang saat ini ditetapkan, dan waktu saat peristiwa ditetapkan.

```
942 errorstack (3) - set at 2020-11-03 11:42:27
10442 level 10 - set at 2020-11-03 11:42:41

PL/SQL procedure successfully completed.
```

## Membatalkan pengaturan peristiwa diagnostik sistem
<a name="Appendix.Oracle.CommonDBATasks.SystemEvents.unsetting"></a>

Untuk membatalkan pengaturan peristiwa sistem, gunakan prosedur `rdsadmin.rdsadmin_util.unset_system_event` Amazon RDS. Anda hanya dapat membatalkan pengaturan peristiwa yang tercantum dalam output dari `rdsadmin.rdsadmin_util.list_allowed_system_events`. Prosedur `unset_system_event` menerima parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_event`  |  number  |  —  |  Ya  |  Nomor peristiwa sistem. Nilai harus salah satu nomor peristiwa yang dilaporkan oleh `list_allowed_system_events`.  | 

Contoh berikut akan membatalkan pengaturan peristiwa 942 dan 10442. Contoh output disertakan.

```
SQL> SET SERVEROUTPUT ON
SQL> EXEC rdsadmin.rdsadmin_util.unset_system_event(942);
Unsetting system event 942 with: alter system set events '942 off'

PL/SQL procedure successfully completed.

SQL> EXEC rdsadmin.rdsadmin_util.unset_system_event(10442);
Unsetting system event 10442 with: alter system set events '10442 off'

PL/SQL procedure successfully completed.
```