All Products
Search
Document Center

Application Real-Time Monitoring Service:Unggah tabel simbol secara massal

Last Updated:Aug 05, 2026

Anda dapat mengunggah file tabel simbol secara massal ke bucket OSS RUM yang ditentukan. Setelah diunggah, file-file tersebut muncul di Konsol RUM di bawah Application Settings > File Management, dan dapat digunakan untuk mengurai stack trace dari exception.

Prasyarat

Catatan penggunaan

  • Anda harus menggunakan bucket OSS spesifik wilayah yang disediakan oleh RUM. Bucket tersebut sesuai dengan wilayah aplikasi RUM Anda. Daftar berikut menunjukkan bucket yang tersedia berdasarkan wilayah:

    • China (Hangzhou) (cn-hangzhou): arms-rum-sourcemap-hz

    • Singapura (ap-southeast-1): arms-rum-sourcemap-sg

    • AS (Silicon Valley) (us-west-1): arms-rum-sourcemap-usw

  • Jalur tujuan untuk unggah OSS: ${uid}/${pid}/${version}/

    Penting
    • uid adalah ID Akun Alibaba Cloud Anda (akun primary), pid adalah ID aplikasi RUM, dan version adalah versi kustom tabel simbol.

    • Untuk iOS, Anda harus mengemas file .dSYM ke dalam arsip ZIP untuk diunggah. Setelah diunggah, RUM secara otomatis mengurai UUID dari file .dSYM tersebut.

RUM mendukung metode berikut untuk mengunggah tabel simbol secara massal:

Unggah menggunakan CLI ossutil

Penting

Sebelum mengunggah dengan ossutil, Anda harus mengonfigurasi kredensial akses Anda. Untuk informasi selengkapnya, lihat Configure ossutil.

Unggah massal direktori lokal

Format perintah:

ossutil cp -r ${localfolder}/ oss://${bucket}/${uid}/${pid}/${version}/

Contoh:

ossutil cp -r localfolder/ oss://arms-rum-sourcemap-hz/1981000187653069/ji7ex7ti31@f1fadb692e6cdc8/1.0.0/

Unggah file lokal

Format perintah:

./ossutil64 cp ${examplefile} oss://${bucket}/${uid}/${pid}/${version}/

Contoh:

./ossutil64 cp examplefile.js.map oss://arms-rum-sourcemap-hz/1981000187653069/ji7ex7ti31@f1fadb692e6cdc8/1.0.0/

Unggah menggunakan OSS SDK

Contoh berikut menggunakan Python SDK untuk mengunggah file examplefile.js.map. UID-nya adalah 1981000187653069, PID-nya adalah ji7ex7ti31@f1fadb692e6cdc8, dan versinya adalah 1.0.0.

Untuk contoh dalam bahasa lain, lihat SDK reference.

# -*- coding: utf-8 -*-
import oss2
import os
from oss2.credentials import EnvironmentVariableCredentialsProvider

# Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel.
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# Setel titik akhir ke yang sesuai dengan wilayah tempat bucket Anda berada. Misalnya, jika bucket Anda berada di wilayah China (Hangzhou), setel titik akhir ke https://oss-cn-hangzhou.aliyuncs.com.
# Setel nama bucket.
bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'arms-rum-sourcemap-hz')

# File harus dibuka dalam mode biner.
# Tentukan jalur lengkap file lokal. Jika Anda tidak menentukan jalur lengkap, file akan diunggah dari direktori tempat program contoh dijalankan.
key = '1981000187653069/ji7ex7ti31@f1fadb692e6cdc8/1.0.0/'
bucket.put_object_from_file(key + 'examplefile.js.map', 'D:\\localpath\\examplefile.js.map')

Integrasi dengan pipeline CI/CD

Anda dapat mengintegrasikan tool baris perintah ossutil atau OSS SDK ke dalam pipeline CI/CD Anda untuk mengunggah file tabel simbol yang dihasilkan selama proses build ke bucket OSS yang ditentukan.

Catatan pengemasan .dSYM iOS

Untuk mengunggah tabel simbol .dSYM iOS, Anda harus mengemas satu atau beberapa file .dSYM ke dalam satu file ZIP. Misalnya, jika sebuah direktori berisi dua file tabel simbol, AlibabaCloudRUM.framework.dSYM dan iOSDemo.app.dSYM, struktur direktorinya adalah sebagai berikut:

.
├── AlibabaCloudRUM.framework.dSYM
│   └── Contents
│       ├── Info.plist
│       └── Resources
│           ├── DWARF
│           │   └── AlibabaCloudRUM
│           └── Relocations
│               └── aarch64
│                   └── AlibabaCloudRUM.yml
└── iOSDemo.app.dSYM
    └── Contents
        ├── Info.plist
        └── Resources
            ├── DWARF
            │   ├── iOSDemo
            │   └── iOSDemo.txt
            └── Relocations
                └── aarch64
                    └── iOSDemo.yml

Kompres file .dSYM dalam direktori ini ke dalam file ZIP bernama test.zip. Proses kompresi dan output-nya adalah sebagai berikut:

» zip -r test.zip *.dSYM                                                    
  adding: AlibabaCloudRUM.framework.dSYM/ (stored 0%)
  adding: AlibabaCloudRUM.framework.dSYM/Contents/ (stored 0%)
  adding: AlibabaCloudRUM.framework.dSYM/Contents/Resources/ (stored 0%)
  adding: AlibabaCloudRUM.framework.dSYM/Contents/Resources/Relocations/ (stored 0%)
  adding: AlibabaCloudRUM.framework.dSYM/Contents/Resources/Relocations/aarch64/ (stored 0%)
  adding: AlibabaCloudRUM.framework.dSYM/Contents/Resources/Relocations/aarch64/AlibabaCloudRUM.yml (deflated 90%)
  adding: AlibabaCloudRUM.framework.dSYM/Contents/Resources/DWARF/ (stored 0%)
  adding: AlibabaCloudRUM.framework.dSYM/Contents/Resources/DWARF/AlibabaCloudRUM (deflated 71%)
  adding: AlibabaCloudRUM.framework.dSYM/Contents/Info.plist (deflated 52%)
  adding: iOSDemo.app.dSYM/ (stored 0%)
  adding: iOSDemo.app.dSYM/Contents/ (stored 0%)
  adding: iOSDemo.app.dSYM/Contents/Resources/ (stored 0%)
  adding: iOSDemo.app.dSYM/Contents/Resources/Relocations/ (stored 0%)
  adding: iOSDemo.app.dSYM/Contents/Resources/Relocations/aarch64/ (stored 0%)
  adding: iOSDemo.app.dSYM/Contents/Resources/Relocations/aarch64/iOSDemo.yml (deflated 89%)
  adding: iOSDemo.app.dSYM/Contents/Resources/DWARF/ (stored 0%)
  adding: iOSDemo.app.dSYM/Contents/Resources/DWARF/iOSDemo.txt (deflated 72%)
  adding: iOSDemo.app.dSYM/Contents/Resources/DWARF/iOSDemo (deflated 72%)
  adding: iOSDemo.app.dSYM/Contents/Info.plist (deflated 52%)

Unggah file test.zip yang dihasilkan.

Penting

Jalur tujuan unggah OSS harus mencantumkan versi.

Error umum

Pesan error: Error: oss: service returned error: StatusCode=403, ErrorCode=AccessDenied, ErrorMessage="You have no right to access this object because of bucket acl."

Jika Anda menerima error 403, periksa apakah akun yang terkait dengan AccessKey Anda telah mengaktifkan Enable OSS batch upload di konsol, seperti yang dijelaskan dalam Prasyarat. Izin ini diisolasi pada tingkat sub-akun. Unggahan memerlukan AccessKey dari akun atau sub-akun yang telah mengaktifkan fitur ini.