The Coralogix RUM CLI is a command-line tool designed to simplify the process of uploading RUM (Real User Monitoring) data. It provides a streamlined way to authenticate with the Coralogix API and manage source maps, dSYM files, and ProGuard mappings.
To install the Coralogix RUM CLI, follow these steps:
- Open a terminal or command prompt.
- Run the following command to install the CLI globally:
npm install -g @coralogix/rum-cli
- Once installed, you can use the CLI by running
coralogix-rum-cli
in your terminal.
Here are some examples of how to use the Coralogix RUM CLI:
Upload source maps:
coralogix-rum-cli upload-source-maps -k <privateKey> -a <application> -v <version> -f <folderPath> -e <env> -c <commitHash> -n <repoName> -o <orgName>
Upload React Native source maps:
coralogix-rum-cli upload-react-native-source-maps -k <privateKey> -a <application> -v <version> -f <folderPath> -e <env> -c <commitHash> -n <repoName> -o <orgName>
Upload dSYM file:
coralogix-rum-cli upload-dsym -k <privateKey> -a <application> -v <version> -f <folderPath> -e <env> -c <commitHash> -n <repoName> -o <orgName>
Upload ProGuard file:
coralogix-rum-cli upload-proguard -k <privateKey> -a <application> -v <version> -f <folderPath> -e <env> -c <commitHash> -n <repoName> -o <orgName>
-
-k, --private-key <privateKey>
: Private key to authenticate with the Coralogix API. -
-a, --application <application>
: Name of the application. -
-v, --version <version>
: The application version (must match the version used by the RUM SDK). -
-f, --folder-path <folderPath>
: Path to the folder containing the Source Maps, dSYM file, or ProGuard mapping file. -
-e, --env <env>
: Your environment (e.g., EU1, US1). -
-c, --commit-hash <commitHash>
: GitHub commit hash (optional). -
-n, --repo-name <repoName>
: GitHub repository name (optional). -
-o, --org-name <orgName>
: GitHub organization name (optional). -
-g, --generate
: Update existing release or create a new one if not found (optional). -
-h, --help
: Display help.
Specify the appropriate environment using the -e
option:
-
EU1:
https://ng-api-grpc.coralogix.com:443
(eu-west-1, Ireland) -
EU2:
https://ng-api-grpc.eu2.coralogix.com:443
(eu-north-1, Stockholm) -
US1:
https://ng-api-grpc.coralogix.us:443
(us-east-2, Ohio) -
US2:
https://ng-api-grpc.cx498.coralogix.com:443
(us-west-2, Oregon) -
AP1:
https://ng-api-grpc.app.coralogix.in:443
(ap-south-1, Mumbai) -
AP2:
https://ng-api-grpc.coralogixsg.com:443
(ap-southeast-1, Singapore) -
AP3:
https://ng-api-grpc.ap3.coralogix.com:443
(ap-southeast-3, Asia Pacific (Jakarta))
Ensure your files do not exceed the following size limits:
- React Native Source Maps: 200MB per folder
- Source Maps: 200MB per folder
- ProGuard Files: 200MB per folder
- dSYM Files: 400MB per file
To automate the upload process in your CI pipeline:
-
Create a Shell Script:
- Name it according to the use case (
e.g.,
upload-source-maps.sh
,upload-react-native-source-maps.sh
,upload-dsym.sh
, orupload-proguard.sh
).
- Name it according to the use case (
e.g.,
-
Template for the Script:
#! /usr/bin/env bash # Replace these values with your actual information REPO_NAME="your-repo-name" ORG_NAME="your-github-username" APPLICATION="your-application-name" ENV="your-environment" FILES_PATH="your-files-path" PRIVATE_KEY="your-coralogix-private-key" VERSION="your-application-version" # Get the commit hash using git rev-parse COMMIT_HASH=$(git rev-parse HEAD) # Run Coralogix RUM CLI to upload the respective files coralogix-rum-cli upload-<command> -k "$PRIVATE_KEY" -a "$APPLICATION" -v "$VERSION" -f "$FILES_PATH" -e "$ENV" -c "$COMMIT_HASH" -n "$REPO_NAME" -o "$ORG_NAME"
Replace
<command>
withsource-maps
,react-native-source-maps
,dsym
, orproguard
based on the file type.
For manual uploads, use the corresponding command in your terminal:
coralogix-rum-cli upload-<command> -k "$PRIVATE_KEY" -a "$APPLICATION" -v "$VERSION" -f "$FILES_PATH" -e "$ENV" -c "$COMMIT_HASH" -n "$REPO_NAME" -o "$ORG_NAME"
Replace <command>
with one of the following as needed:
source-maps
react-native-source-maps
dsym
proguard
IMPORTANT: The $VERSION parameter must exactly match the version specified in the SDK initialization (init) function configuration in your Coralogix SDK for Browsers |
---|
You can provide additional GitHub-related options to enhance source map management:
-
-c, --commit-hash <commitHash>
: The commit hash associated with the source maps. -
-n, --repo-name <repoName>
: The repository name where the source code is hosted. -
-o, --org-name <orgName>
: The organization user associated with the repository.
These options are optional but can improve issue tracking within Coralogix RUM.
This project is licensed under the MIT License. See the LICENSE file for details.