Documentation

Symbol file uploads API reference

Find variables and flags you can use to call the API directly or build custom integrations to upload debugging symbols.
Read time 1 minuteLast updated 7 hours ago

If you want to call the Unity Services API directly or build a custom integration to upload debugging symbols, then use the following information to set the required variables and flags.
Note
You can also upload debugging symbols through CI/CD pipelines.

Environment variables

Environment variables are automatically set by the upload scripts. If you want to build a custom integration, then you must set the following variables before you run
usymtool
.

Variable

Required

Value

USYM_UPLOAD_AUTH_TOKEN
YesThe
AuthToken
value from the token API response
USYM_UPLOAD_URL_SOURCE
Yes
https://perf-events.cloud.unity3d.com/url
LZMA_PATH
No (auto-set by the script)Path to Unity's bundled
lzma
binary. Required by
usymtool
on Unity 6.2 and earlier for symbol compression. Starting with Unity 6.3,
usymtool
uses built-in gzip compression and this variable is ignored. The script sets this automatically.

Usymtool flags

Use the following flags to customize how the
usymtool
script operates and which files it uploads.

Flag

Required

Description

-symbolPath
YesSets the path to the directory or file that contains the debug symbols to upload.
-il2cppOutputPath
NoSets the path to the IL2CPP-generated C++ output directory, which enables C# line number mapping.
-il2cppFileRoot
NoSets the root path to the IL2CPP files as compiled into the native binary. If blank, it matches on the full paths from
-il2cppOutputPath
.
-forceUpload
NoReuploads files even if they already exist in storage.
-filter
NoProcesses only files whose names match a regular expression.
-excludeFilter
NoSkips files whose names match a regular expression.
-log
NoSets the log file path. This path defaults to
~/Library/Logs/Unity/symbol_upload.log
on macOS, and to
%LOCALAPPDATA%\Unity\Editor\symbol_upload.log
on Windows.