Unleashing your Instana to observe new technologies
You can set up Instana to observe new systems or technologies by using Instana’s custom dashboard and events definition features, along with its OpenTelemetry integration capabilities. By using public dashboards, events, and reusable integration packages, you can implement the required observability solutions by yourself.
Exploring the integration packages
Search for reusable dashboards and events definition that are bundled into integration packages on a central registry such as npmjs. You can review these packages for their functionality, installation steps, and other details before you integrate them into your Instana environment. Reviewing the packages ensures a faster adoption of new observability features. IBM, along with customers and business partners, provide their integration packages that you can download and import to enhance the monitoring capabilities. The following table provides some examples of available packages:
Name | Description | Link |
---|---|---|
opentelemetry-demo | The Instana integration package used to demonstrate the monitoring of the OpenTelemetry demo application, an Instana version of the opentelemetry-demo project forked from the community. | opentelemetry-demo |
go | The Instana integration package used to support Go monitoring. | go |
nodejs | The Instana integration package used to support Node.js monitoring. | nodejs |
Downloading, importing, and exporting dashboards and events definition
Because the reusable dashboards and events definition are bundled into integration packages and publicly available, you can choose the packages that support the systems or technologies that you want to observe. Download the required packages and import them into your existing Instana environments. Importing the packages immediately extends the capabilities of your Instana environment to support the observability of new systems or technologies.
You can use the command-line tool, Instana CLI for integration package management, to download, import, and export the integration packages. With this tool, you can manage the lifecycle of the package including the reusable dashboards and events definition. To download the latest version of the tool, see the Instana CLI for integration package management release page.
Downloading dashboards and events definition
To download an integration package including the reusable dashboards and events definition by using the tool, you must specify the package name. See the following sample command to download a package named @instana-integration/go
:
$ stanctl-integration download --package @instana-integration/go
By default, the tool creates a sub-directory in the current working directory as the root directory to store all the downloaded integration packages. You can also specify your own root directory for the packages using the --location
option. For example, the following command downloads the package under the root directory ./my-packages
:
$ stanctl-integration download --package @instana-integration/go --location ./my-packages
Importing dashboards and events definition
Once the integration package is downloaded to your local machine, you can use the tool to import the dashboards and events definition into any existing Instana environment. You must provide the Instana server address and the API token by using the corresponding options when you run the tool. The API token is required because tool calls a series of Instana APIs to complete the import of the dashboards and events definition. See the following example:
$ stanctl-integration import --package @instana-integration/go \
--server $INSTANA_SERVER \
--token $API_TOKEN
You can specify the directory using --location
option. For example:
$ stanctl-integration import --package @instana-integration/go --location ./my-packages \
--server $INSTANA_SERVER \
--token $API_TOKEN
To make the import work, you must make sure that the API token enabled the permission Sharing custom dashboards publicly with all users and API tokens
. To confirm, open the Instana navigation menu and go to Settings > Team Settings > API Tokens, and then on the API Tokens page, select the token that you are using for the import. On the Edit API Token dialog, find the Owner Permissions section and make sure the Sharing custom dashboards publicly with all users and API tokens
item is enabled.
Specifying parameter values for the dashboards
Some dashboards might have parameters in their dashboard definitions included in the integration package. This is because some values appeared in the dashboard definitions might not be determined yet when the dashboard maintainer defines the
dashboard. You can check the package's home page to see if any parameters are included in this package. When importing such dashboards by using the tool, you can specify the actual values for these parameters by using --set
option, and this option can be used multiple times. For example:
$ stanctl-integration import --package @instana-integration/go \
--server $INSTANA_SERVER \
--token $API_TOKEN \
--set key1=value1 \
--set key2=value2
Exporting dashboards and events definition
In addition to downloading and importing, the Instana CLI for integration package management also supports exporting dashboards and events definition from an existing Instana environment. To export dashboards and events definition, you must
provide the Instana server address, a valid API token, and at least one --include
option that specifies the type of asset (dashboard or event). In addition to the asset type, you must specify either the title or id to identify
the specific element you want to export. The tool uses the Instana APIs to retrieve the matching assets and saves them locally in a portable format. See the following example where dashboards and events definition are exported by matching
a title:
$ stanctl-integration export --server $INSTANA_SERVER \
--token $API_TOKEN \
--include type=dashboard title="dashboardTitle"
Alternatively, if you know the ID of a dashboard or event, you can export it directly by specifying the ID. See the following example:
$ stanctl-integration export --server $INSTANA_SERVER \
--token $API_TOKEN \
--include type=event id=eventID