# 审计事件表

下表包含了在整个 CPython 运行时和标准库中由 `sys.audit()` 或 `PySys_Audit()` 调用引发的所有事件。这些调用是在 3.8.0 或更高版本中添加的。

请参阅 `sys.addaudithook()` 和 `PySys_AddAuditHook()` 了解有关处理这些事件的详细信息。

CPython implementation detail: 此表是根据 CPython 文档生成的，可能无法表示其他实现所引发的事件。 请参阅你的运行时专属的文档了解实际引发的事件。

Audit event | Arguments | References
--- | --- | ---
array.__new__ | `typecode`, `initializer` | [1]
builtins.breakpoint | `breakpointhook` | [1]
builtins.input | `prompt` | [1]
builtins.input/result | `result` | [1]
code.__new__ | `code`, `filename`, `name`, `argcount`, `posonlyargcount`, `kwonlyargcount`, `nlocals`, `stacksize`, `flags` | [1]
compile | `source`, `filename` | [1]
cpython.PyInterpreterState_Clear |  | [1]
cpython.PyInterpreterState_New |  | [1]
cpython._PySys_ClearAuditHooks |  | [1]
cpython.run_command | `command` | [1]
cpython.run_file | `filename` | [1]
cpython.run_interactivehook | `hook` | [1]
cpython.run_module | `module-name` | [1]
cpython.run_startup | `filename` | [1]
cpython.run_stdin |  | [1]
ctypes.addressof | `obj` | [1]
ctypes.call_function | `func_pointer`, `arguments` | [1]
ctypes.cdata | `address` | [1]
ctypes.cdata/buffer | `pointer`, `size`, `offset` | [1][2]
ctypes.create_string_buffer | `init`, `size` | [1]
ctypes.create_unicode_buffer | `init`, `size` | [1]
ctypes.dlopen | `name` | [1]
ctypes.dlsym | `library`, `name` | [1]
ctypes.dlsym/handle | `handle`, `name` | [1]
ctypes.get_errno |  | [1]
ctypes.get_last_error |  | [1]
ctypes.seh_exception | `code` | [1]
ctypes.set_errno | `errno` | [1]
ctypes.set_last_error | `error` | [1]
ctypes.string_at | `address`, `size` | [1]
ctypes.wstring_at | `address`, `size` | [1]
ensurepip.bootstrap | `root` | [1]
exec | `code_object` | [1][2]
ftplib.connect | `self`, `host`, `port` | [1]
ftplib.sendcmd | `self`, `cmd` | [1][2]
glob.glob | `pathname`, `recursive` | [1][2]
imaplib.open | `self`, `host`, `port` | [1]
imaplib.send | `self`, `data` | [1]
import | `module`, `filename`, `sys.path`, `sys.meta_path`, `sys.path_hooks` | [1]
mmap.__new__ | `fileno`, `length`, `access`, `offset` | [1]
nntplib.connect | `self`, `host`, `port` | [1][2]
nntplib.putline | `self`, `line` | [1][2]
open | `file`, `mode`, `flags` | [1][2][3]
os.exec | `path`, `args`, `env` | [1]
os.listdir | `path` | [1]
os.posix_spawn | `path`, `argv`, `env` | [1][2]
os.scandir | `path` | [1]
os.spawn | `mode`, `path`, `args`, `env` | [1]
os.startfile | `path`, `operation` | [1]
os.system | `command` | [1]
os.truncate | `fd`, `length` | [1][2]
pdb.Pdb |  | [1]
pickle.find_class | `module`, `name` | [1]
poplib.connect | `self`, `host`, `port` | [1][2]
poplib.putline | `self`, `line` | [1][2]
pty.spawn | `argv` | [1]
shutil.copytree | `src`, `dst` | [1]
shutil.make_archive | `base_name`, `format`, `root_dir`, `base_dir` | [1]
shutil.rmtree | `path` | [1]
smtplib.connect | `self`, `host`, `port` | [1]
smtplib.send | `self`, `data` | [1]
socket.__new__ | `self`, `family`, `type`, `protocol` | [1]
socket.bind | `self`, `address` | [1]
socket.connect | `self`, `address` | [1][2]
socket.getaddrinfo | `host`, `port`, `family`, `type`, `protocol` | [1]
socket.gethostbyaddr | `ip_address` | [1]
socket.gethostbyname | `hostname` | [1][2]
socket.gethostname |  | [1]
socket.getnameinfo | `sockaddr` | [1]
socket.getservbyname | `servicename`, `protocolname` | [1]
socket.getservbyport | `port`, `protocolname` | [1]
socket.sendmsg | `self`, `address` | [1]
socket.sendto | `self`, `address` | [1]
socket.sethostname | `name` | [1]
sqlite3.connect | `database` | [1]
subprocess.Popen | `executable`, `args`, `cwd`, `env` | [1]
sys._current_frames |  | [1]
sys._getframe |  | [1]
sys.addaudithook |  | [1][2]
sys.excepthook | `hook`, `type`, `value`, `traceback` | [1]
sys.set_asyncgen_hooks_finalizer |  | [1]
sys.set_asyncgen_hooks_firstiter |  | [1]
sys.setprofile |  | [1]
sys.settrace |  | [1]
sys.unraisablehook | `hook`, `unraisable` | [1]
telnetlib.Telnet.open | `self`, `host`, `port` | [1]
telnetlib.Telnet.write | `self`, `buffer` | [1]
tempfile.mkdtemp | `fullpath` | [1][2]
tempfile.mkstemp | `fullpath` | [1][2][3]
urllib.Request | `fullurl`, `data`, `headers`, `method` | [1]
webbrowser.open | `url` | [1]
winreg.ConnectRegistry | `computer_name`, `key` | [1]
winreg.CreateKey | `key`, `sub_key`, `access` | [1][2]
winreg.DeleteKey | `key`, `sub_key`, `access` | [1][2]
winreg.DeleteValue | `key`, `value` | [1]
winreg.DisableReflectionKey | `key` | [1]
winreg.EnableReflectionKey | `key` | [1]
winreg.EnumKey | `key`, `index` | [1]
winreg.EnumValue | `key`, `index` | [1]
winreg.ExpandEnvironmentStrings | `str` | [1]
winreg.LoadKey | `key`, `sub_key`, `file_name` | [1]
winreg.OpenKey | `key`, `sub_key`, `access` | [1]
winreg.OpenKey/result | `key` | [1][2][3]
winreg.PyHKEY.Detach | `key` | [1]
winreg.QueryInfoKey | `key` | [1]
winreg.QueryReflectionKey | `key` | [1]
winreg.QueryValue | `key`, `sub_key`, `value_name` | [1][2]
winreg.SaveKey | `key`, `file_name` | [1]
winreg.SetValue | `key`, `sub_key`, `type`, `value` | [1][2]