Application Monitoring
As tech-stacks evolve and Kubernetes/Rancher platforms are upgraded, additional settings/configurations are needed to enable monitoring on your applications in SCALE DevOps by Instana. Please visit below link and click on specific technology your application(s) uses to see detailed information about installing and configuring Instana data-collector: Configuring and monitoring supported technologies
Spring Boot and NodeJs seem to be the two main tech stacks in SCALE DevOps, so here are summarized simple steps to follow to enable detailed monitoring for those two tech-stacks :
Spring Boot
Note : below configs for Spring Boot are added to boilerplate by DevOps team, so when you order a new instance of Spring Boot in the portal, you don't need to repeat the steps. Please apply below steps to your existing Spring Boot services.
-
Spring Boot Actuator needs to be configured:
pom.xml<dependency>
<groupId> org.springframework.boot </groupId>
<artifactId> spring-boot-starter-actuator </artifactId>
</dependency> -
For Spring Boot 2.2.x and later it's necessary to enable JMX in:
application.propertiesspring.jmx.enabled=trueor:
application.yamlmanagement:
port: 9000
security:
enabled: false
spring:
jmx:
enabled: true
NodeJS
-
Install the Instana Node.js collector in your app.
To install the Instana Node.js collector and have your Node.js app monitored by Instana, install the npm package @instana/collector via:
npm install --save @instana/collectorNow that the collector is installed, it needs to be activated from within the application. Do this by requiring and initializing it as the first statement in your application:
require('@instana/collector')();
// All other require statements must be done after the collector is initialized.
// Note the () after the require statement of the collector which initializes it.
// const express = require('express');For more in-depth information, refer to the installation page.
-
Add an env-var
INSTANA_AGENT_HOSTto your deployment config:deployment.yamlapiVersion: apps/v1
kind: Deployment
...
...
...
template:
...
...
spec:
containers:
- env:
- name: INSTANA_AGENT_HOST
valueFrom:
fieldRef:
fieldPath: status.hostIP
envFrom:
- configMapRef:
name: isf-api
image: docker-vault.repo-hio.cloudone.netapp.com/tub-risfstg-stg/nodejs-isf-api:1.9.0-release-m378a402c
imagePullPolicy: Always
livenessProbe:
failureThreshold: 3
httpGet:
path: /ping
port: nodejs
scheme: HTTP
periodSeconds: 10
successThreshold: 1
...
...
...- Note for Go, Ruby, Python, .NET Core: These applications need to have the env-var
INSTANA_AGENT_HOSTdefined:deployment.yamlspec:
containers:
env:
- name: INSTANA_AGENT_HOST
valueFrom:
fieldRef:
fieldPath: status.hostIPIf you have any further questions or concerns, please contact Han.Jo@netapp.com from the Monitoring & FinOps team.