A quick example on how to set multiple events.
(For example, you are asked by Oracle support to set an event and you already have one that you want to keep)

In the spfile:
the name is 'event' and values are quoted then comma separated as in:
1:
2:
3:
ALTER SYSTEM SET event='10235 trace name context forever, 
level 2','27072 trace name errorstack level 3' COMMENT='TEST' SCOPE=SPFILE;

If bad syntax, you will get ORA-2194 at next database restart, so double check and copy old spfile just in case.

You can remove all events with:
1:
2:
ALTER SYSTEM RESET EVENT SCOPE=SPFILE SID='*' ;


In memory:
the name is 'events' and values are column-separated then quoted as in:
1:
2:
3:
ALTER SYSTEM SET events='10235 trace name context forever, 
level 2:27072 trace name errorstack level 3';


In the pfile:

- the name is 'event' and values are column-separated then quoted as in:
event='10235 trace name context forever, level 2:27072 trace name errorstack level 3'

- or set parameters one by one (must follow eachother):
event='10235 trace name context forever, level 2'
event='27072 trace name errorstack level 3'



1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
{ alter system set event = | alter session set events [=] } 
"<dbg_evt> trace name context {forever, level <n> | off}"
 
alter session set events [=] {
"immediate trace name 
{ heapdump | blockdump | treedump | controlf | systemstate | buffers } level <n>"
| "<oerr> trace name errorstack level <n> [; name processstate level <n>]"
}
 
{ alter system set event = | alter session set events [=] } 
"<dbg_evt> trace name context {forever, level <n> | off}"
 
alter session set events [=] {
"immediate trace name 
{ heapdump | blockdump | treedump | controlf | systemstate | buffers } level <n>" 
| "<oerr> trace name errorstack level <n> [; name processstate level <n>]"
}