Todos os produtos
Search
Central de documentação

Application Real-Time Monitoring Service:Bulk upload symbol tables

Última atualização: Jun 27, 2026

Quando sua aplicação utiliza ofuscação ou minificação de código, os stack traces de falhas e erros tornam-se ilegíveis. As tabelas de símbolos (source maps do JavaScript, arquivos dSYM do iOS) restauram esses rastreamentos para nomes de funções, caminhos de arquivo e números de linha legíveis. Para enviar tabelas de símbolos em massa, em vez de uma por vez pelo console, envie-as diretamente ao bucket do Object Storage Service (OSS) fornecido pelo sub-serviço Real User Monitoring (RUM) do Application Real-Time Monitoring Service (ARMS).

Estão disponíveis três métodos de upload: ossutil, SDKs do OSS e pipelines de CI/CD.

Pré-requisitos

Antes de começar, verifique se você tem:

Formato do bucket e caminho do OSS

Selecione o bucket da sua região

Use o bucket correspondente à região onde sua aplicação está hospedada:

Região

Bucket

China (Hangzhou)

arms-rum-sourcemap-hz

Singapura

arms-rum-sourcemap-sg

EUA (Vale do Silício)

arms-rum-sourcemap-usw

Defina o caminho de upload

Envie os arquivos para a seguinte estrutura de caminho:

<uid>/<pid>/<version>/

Espaço reservado

Descrição

Exemplo

<uid>

ID da conta Alibaba Cloud

1981000187653069

<pid>

ID da aplicação RUM

ji7ex7ti31@f1fadb692e6cdc8

<version>

Versão da tabela de símbolos

1.0.0

Importante

Para aplicativos iOS, compacte os arquivos dSYM em um arquivo .zip antes de fazer o upload. O RUM analisa automaticamente o UUID do arquivo compactado. Consulte Enviar arquivos dSYM para obter detalhes.

Upload com ossutil

O ossutil é uma ferramenta de linha de comando para o OSS. Ele oferece suporte a uploads de diretórios e é o método mais simples para operações em massa.

Importante

Configure as credenciais de acesso do ossutil antes de prosseguir. Para mais detalhes, consulte Configurar o ossutil.

Envie um diretório

Envie todas as tabelas de símbolos de um diretório local:

ossutil cp -r <local-directory>/ oss://<bucket>/<uid>/<pid>/<version>/

Exemplo:

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

Envie um único arquivo

./ossutil64 cp <file-path> oss://<bucket>/<uid>/<pid>/<version>/

Exemplo:

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

Upload com SDKs do OSS

Use um SDK do OSS quando precisar de controle programático ou quiser integrar os uploads ao código da sua aplicação. Todos os exemplos de SDK seguem o mesmo padrão: autenticação via variáveis de ambiente, conexão com o bucket específico da região e envio dos arquivos para o caminho <uid>/<pid>/<version>/.

O exemplo abaixo em Python envia um arquivo source map chamado examplefile.js.map:

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

# Authenticate using the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())

# Connect to the China (Hangzhou) region bucket
bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'arms-rum-sourcemap-hz')

# Build the destination path: <uid>/<pid>/<version>/<filename>
destination = '1981000187653069/ji7ex7ti31@f1fadb692e6cdc8/1.0.0/examplefile.js.map'

# Upload the local file
bucket.put_object_from_file(destination, 'D:\\localpath\\examplefile.js.map')

Para outras linguagens, consulte Visão geral do SDK do OSS.

Integração com pipelines de CI/CD

Integre pipelines de CI/CD ao ossutil ou aos SDKs do OSS para enviar tabelas de símbolos ao bucket do OSS especificado.

Envio de arquivos dSYM

Para aplicativos iOS, compacte os arquivos dSYM antes do upload. O RUM extrai automaticamente o UUID de cada arquivo compactado.

  1. Localize seus arquivos dSYM. Estrutura típica de diretório:

       .
       ├── 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
  2. Compacte os arquivos dSYM em um arquivo .zip:

       zip -r dsyms.zip *.dSYM
  3. Envie o arquivo compactado para o OSS. O caminho deve incluir a versão:

       ossutil cp dsyms.zip oss://<bucket>/<uid>/<pid>/<version>/

Perguntas frequentes

O que significa "403 AccessDenied: You have no right to access this object because of bucket acl"?

Esse erro ocorre quando a opção Enable OSS batch upload não está ativada para sua conta. Para resolver:

  1. Abra o console do ARMS e acesse sua aplicação.

  2. Acesse a aba Application Settings.

  3. Na seção File Management, ative a opção Enable OSS batch upload.

Somente contas com essa opção ativada podem fazer upload no bucket OSS do RUM. Para mais detalhes, consulte Pré-requisitos.

Próximos passos