diff --git a/_docs_agent/application-monitoring.md b/_docs_agent/application-monitoring.md new file mode 100644 index 0000000..8eaa827 --- /dev/null +++ b/_docs_agent/application-monitoring.md @@ -0,0 +1,53 @@ +--- +layout: page +title: Application monitoring +description: Overview of information on how to configure CoScale application monitoring +--- + +CoScale can monitor applications running on your host machines as well as applications running inside Docker containers. The technology is set up in a way that you don't need to expose ports or mounts filesystems for the monitoring to function. To setup an application for CoScale monitoring you need to configure the CoScale agent to do so. If you haven't installed a CoScale agent yet, [check out the instructions on how to install the CoScale agent here]({{ site.baseurl }}/agent/install). + +For containers our monitoring is launched from inside the container, this has certain advantages: + +* **Local network access**: Our plugins share the same network space as the container, this means all open ports are accessible, even if not exposed. +* **File system access**: Our plugins share the same file system as the container, this means container filesystem is accessible, even if not mounted on host. +* **Docker API access**: Our plugins have access to Docker API through the CoScale agent, this means Docker logs data is available for use as a path (`/dev/stdout`), [secrets and environment variables]({{ site.baseurl }}/agent/linux/environment-variables/) are available for other configuration settings. + +A [full list of our supported technologies can be found on our Agent page]({{ site.baseurl }}/agent/index#integrations), including for each the configuration required to set it up. + +## Configuration + +Go the agent page by going to `Datasources > Agent` in the sidebar inside your CoScale application. Click on the configure button next to the agent you want to update. + +### Configure the CoScale Docker agent with Docker label detection + +The agent will automatically start to monitor all Docker containers which have a label that starts with `com.coscale.monitoring` and contains a list of plugins and their configuration. These labels can be generated by clicking on the `Generate Docker labels` button under the configuration pane. You can mark an image to be monitored by placing the generated label in your Dockerfile: + +{% highlight docker %} +LABEL com.coscale.monitoring='[{"PluginType":"GENERICSCRIPT","Configuration":{"SCRIPT":["/script.sh"]}}]' +{% endhighlight %} + +For already existing images the label can also be specified when creating containers, in the `docker run` command via the `--label` or `--label-file` options: + +{% highlight bash %} +docker run -d --label com.coscale.monitoring='[{"PluginType":"CASSANDRA","Configuration":{"JMX HOSTNAME":["localhost"],"JMX PORT":["7199"]}}]' cassandra +{% endhighlight %} + +Note that if the container's base image already has the 'com.coscale.monitoring' label, adding it again on `docker run` will overwrite the configuration in the base image. If instead want to extend the list of plugins defined in the base image, you can use a different label name in the `docker run` command, for example `com.coscale.monitoring.extra` or `com.coscale.monitoring.anything`. + +You can find some more example images on our [Github repository](https://github.com/CoScale/docker-adapted), please don't hesitate to contact us if you need a specific example. + +### Configure the CoScale Docker agent with Docker image detection + +The CoScale agent also has a system that scans running containers and sets up the monitoring based on the image name and tag. You will need to add a set of plugins to be installed when a container with your specific image is running, this can be done through our UI by clicking the `Add image` button. Our image and tag detection can use wildcards, so "jboss-*" will trigger on all images that start with "jboss". After adding a plugin, you will receive instructions on how to setup your Docker container so that our agent can monitor it. + +Screenshot of Docker configuration + +You can add multiple images at the same time. After saving your configuration the CoScale agent will pick-up the new configuration and start to scan for images. + +### Configure the CoScale agent for host application monitoring + +To monitor applications in a non-container environment you need to enable the plugins on the agent of the software you want to monitor. The resource plugin is enabled by default, but you probably also want to enable other plugins. For a web server running Tomcat i.e. you would enable the Tomcat plugin by clicking on it. You can enable as many plugins as you like. + +Deployment type + +Some plugins require further configuration, read and follow the instructions carefully. If necessary, apply the proposed changes to the server as shown in the instructions and fill in the required fields. After saving your configuration the CoScale agent will pick-up the new configuration and start to monitor your applications. diff --git a/_docs_agent/index.md b/_docs_agent/index.md index f703b5c..2bcc302 100644 --- a/_docs_agent/index.md +++ b/_docs_agent/index.md @@ -7,119 +7,118 @@ description: Overview of information on how to configure, install and maintain t Create and install the Agent The CoScale lightweight agent is used to monitor server infrastructure and services, it uses log parsing and global status pages to gather its data and pushes the data to the CoScale platform through HTTPS calls. Below you can find a list of supported plugins and more advanced features. -## GNU Linux / Unix - -* [Installing the agent]({{ site.baseurl }}/agent/agent-install#unix) -* [Restarting the agent]({{ site.baseurl }}/agent/agent-restart#unix) -* [Uninstalling the agent]({{ site.baseurl }}/agent/agent-uninstall#unix) -* [Exporting logs for support]({{ site.baseurl }}/agent/export-logs#unix) -* [Configure with environment variables]({{ site.baseurl }}/agent/linux/environment-variables) - -## Microsoft Windows - -* [Installing the agent]({{ site.baseurl }}/agent/agent-install#microsoft-windows) -* [Restarting the agent]({{ site.baseurl }}/agent/agent-restart#microsoft-windows) -* [Uninstalling the agent]({{ site.baseurl }}/agent/agent-uninstall#microsoft-windows) -* [Exporting logs for support]({{ site.baseurl }}/agent/export-logs#microsoft-windows) -* [RAM disk]({{ site.baseurl }}/agent/windows/ram-disk) - -## Plugins -Overview of all plugins with more information about the metrics gathered and special features. +## Integrations +CoScale gathers data from lots of different orchestrators and application services. Click the icons below to get more information on the metrics, events and installation of a certain integrations. Integrations in CoScale are also sometimes referred to as plugins. ### Containers
-
Docker icon Docker
-
Docker icon Docker Swarm
-
Kubernetes icon Kubernetes
-
Openshift icon Openshift
+
Docker icon Docker
+
Docker icon Docker Enterprise / Swarm
+
Kubernetes icon Kubernetes
+
Openshift icon Openshift
### Web
-
Apache icon Apache
-
NGINX icon NGINX
-
IIS icon IIS
-
HAProxy icon HAProxy
-
Tomcat icon Tomcat
-
Varnish icon Varnish
-
JBoss icon JBoss
-
Nodejs icon Nodejs
-
Dropwizard icon Dropwizard
-
Dotnetcore icon .NET Core
-
Spring Boot icon Spring Boot
+
Apache icon Apache
+
NGINX icon NGINX
+
IIS icon IIS
+
HAProxy icon HAProxy
+
Tomcat icon Tomcat
+
Varnish icon Varnish
+
JBoss icon JBoss
+
Nodejs icon Nodejs
+
Dropwizard icon Dropwizard
+
Dotnetcore icon .NET Core
+
Spring Boot icon Spring Boot
### Caching
-
Memcached icon Memcached
+
Memcached icon Memcached
### Database
-
Mysql icon MySQL
-
Mssql icon MSSQL
-
Oracle icon Oracle
-
PostgreSQL icon PostgreSQL
-
Hana icon Hana
+
Mysql icon MySQL
+
Mssql icon MSSQL
+
Oracle icon Oracle
+
PostgreSQL icon PostgreSQL
+
Hana icon Hana
### NoSQL
-
MongoDB icon MongoDB
-
Redis icon Redis
-
Couchbase icon Couchbase
-
CouchDb icon CouchDB
-
Cassandra icon Cassandra
-
ElasticSearch icon ElasticSearch
-
Riak icon Riak
-
Solr icon Solr
+
MongoDB icon MongoDB
+
Redis icon Redis
+
Couchbase icon Couchbase
+
CouchDb icon CouchDB
+
Cassandra icon Cassandra
+
ElasticSearch icon ElasticSearch
+
Riak icon Riak
+
Solr icon Solr
### Queueing
-
RabbitMQ icon RabbitMQ
-
ActiveMQ icon ActiveMQ
-
Kafka icon Kafka
+
RabbitMQ icon RabbitMQ
+
ActiveMQ icon ActiveMQ
+
Kafka icon Kafka
### Generic monitoring
-
Resources icon Resources
-
Cron icon Cron
-
Script icon Generic Script
-
Log icon Log
-
CollectD icon CollectD
-
JMX icon JMX
-
Jolokia icon Jolokia
-
Fluentd icon Fluentd
-
Calico icon Calico
-
Golang icon Golang
+
Resources icon Resources
+
Cron icon Cron
+
Script icon Generic Script
+
Log icon Log
+
CollectD icon CollectD
+
JMX icon JMX
+
Jolokia icon Jolokia
+
Fluentd icon Fluentd
+
Calico icon Calico
+
Golang icon Golang
### 3rd party integrations
-
AWS icon Amazon CloudWatch
-
Azure icon Azure
-
Prometheus icon Prometheus
-
Pingdom icon Pingdom
-
Sentry icon Sentry
-
Rollbar icon Rollbar
-
Google Analytics icon Google Analytics
-
Magento icon Magento
-
AWeber icon AWeber
-
Constant Contact icon Constant Contact
-
Campaign Monitor icon Campaign Monitor
-
Mailchimp icon Mailchimp
+
AWS icon Amazon CloudWatch
+
Azure icon Azure
+
Prometheus icon Prometheus
+
Pingdom icon Pingdom
+
Sentry icon Sentry
+
Rollbar icon Rollbar
+
Google Analytics icon Google Analytics
+
Magento icon Magento
+
AWeber icon AWeber
+
Constant Contact icon Constant Contact
+
Campaign Monitor icon Campaign Monitor
+
Mailchimp icon Mailchimp
+## GNU Linux / Unix + +* [Installing the agent]({{ site.baseurl }}/agent/agent-install#unix) +* [Restarting the agent]({{ site.baseurl }}/agent/agent-restart#unix) +* [Uninstalling the agent]({{ site.baseurl }}/agent/agent-uninstall#unix) +* [Exporting logs for support]({{ site.baseurl }}/agent/export-logs#unix) +* [Configure with environment variables]({{ site.baseurl }}/agent/linux/environment-variables) + +## Microsoft Windows + +* [Installing the agent]({{ site.baseurl }}/agent/agent-install#microsoft-windows) +* [Restarting the agent]({{ site.baseurl }}/agent/agent-restart#microsoft-windows) +* [Uninstalling the agent]({{ site.baseurl }}/agent/agent-uninstall#microsoft-windows) +* [Exporting logs for support]({{ site.baseurl }}/agent/export-logs#microsoft-windows) +* [RAM disk]({{ site.baseurl }}/agent/windows/ram-disk) ## Extra diff --git a/_docs_agent/install.md b/_docs_agent/install.md index 3ced3d8..9346d73 100644 --- a/_docs_agent/install.md +++ b/_docs_agent/install.md @@ -20,17 +20,17 @@ The type of agent to choose depends on your environment. In general when running ### Option 1: Container -1.1. Select your deployment/orchestration system +#### 1.1. Select your deployment/orchestration system Deployment type -1.2. Add images +#### 1.2. Add images -The default configuration of the agent will allow CoScale to gather general metrics about the deployment system. We can also gather detailed metrics about the services running inside your Docker containers. Use the `Add image` button to add a set of plugins that run inside of your containers to gather metrics of the running services. +The default configuration of the agent will allow CoScale to gather general metrics about the deployment system. We can also gather detailed metrics about the services running inside your Docker containers. Use the `Add image` button to add a set of plugins that run inside of your containers to gather metrics of the running services. [More information about this system can be found here]({{ site.baseurl }}/agent/application-monitoring). Deployment type -1.3. Configure plugins for images +#### 1.3. Configure plugins for images Deployment type @@ -38,13 +38,13 @@ Provide the image name and tag (* can be used for tag). Select the plugin type a Deployment type -1.4. Review & download +#### 1.4. Review & download Give your agent a clear, recognizable name and press the `Save` button. Deployment type -1.5. Install instructions +#### 1.5. Install instructions Copy the install instructions on the screen to start the CoScale agent in a Docker container. The CoScale agent will run in the foreground. Typically our users use systemd/upstart to make the agent start on every boot. @@ -56,14 +56,14 @@ You've now created and installed your first CoScale agent. To check if the agent ### Option 2: Package/Executable -2.1.Select the operating system on which the agent will be installed. +#### 2.1.Select the operating system on which the agent will be installed. Deployment type {% include alert.html type="info" text="We only support 64 bit operating systems, contact support for more information" %} -2.2. Enable some plugins +#### 2.2. Enable some plugins Enable all plugins you want to activate for this agent. The resource plugin is enabled by default, but you probably also want to enable other plugins. For a web server running Tomcat i.e. you would enable the Tomcat plugin by clicking on it. You can enable as many plugins as you like. @@ -74,13 +74,13 @@ If necessary, apply the proposed changes to the server as shown in the instructi {% include alert.html type="info" text="You can easily activate more plugins later and reconfigure them without having to re-install the agent." %} -2.3. Review & download +#### 2.3. Review & download Give your agent a clear, recognizable name: i.e. ‘Webserver’ and press the `Save` button. Deployment type -2.4. Download & install +#### 2.4. Download & install You have now created an agent which you can deploy on as many servers as you'd like. A "Download Agent" button is available with the installation files for your operating system. The instructions for installing the agent on your operating system are also shown on this screen. diff --git a/_docs_agent/plugins/_installation.md b/_docs_agent/plugins/_installation.md new file mode 100644 index 0000000..68b5220 --- /dev/null +++ b/_docs_agent/plugins/_installation.md @@ -0,0 +1,5 @@ +The plugin needs to be installed together with a CoScale agent, [instructions on how to install the CoScale agent can be found here]({{ site.baseurl }}/agent/install). If you want to monitor {{ include.service | default: 'your applications' }} inside Docker containers using CoScale, [check out the instructions here]({{ site.baseurl }}/agent/application-monitoring). + +{% if include.orchestrator == 'true' %} +The CoScale orchestrator integration works well together with the [CoScale Docker]({{ site.baseurl }}/agent/plugins/docker) and [CoScale Resources]({{ site.baseurl }}/agent/plugins/resources) plugin. These plugins gather data from all the running Docker containers as well as the host operating system resource metrics. The orchestrator allows us to tie the data together so you can retrieve performance specific metrics for your services or applications. These plugins are installed by default if you follow the [instructions on how to install the CoScale agent]({{ site.baseurl }}/agent/install). +{% endif %} diff --git a/_docs_agent/plugins/activemq.md b/_docs_agent/plugins/activemq.md index a978d64..99075c7 100644 --- a/_docs_agent/plugins/activemq.md +++ b/_docs_agent/plugins/activemq.md @@ -14,6 +14,10 @@ The plugin can get statistics about ActiveMQ topics and queues using the JMX int **The minimal supported version of ActiveMQ is 5.10.0** +## Installation + +{% include_relative _installation.md orchestrator="false" service="ActiveMQ" %} + ## Configuration ### Enable JMX diff --git a/_docs_agent/plugins/apache.md b/_docs_agent/plugins/apache.md index 1eba56e..d5ae9b7 100644 --- a/_docs_agent/plugins/apache.md +++ b/_docs_agent/plugins/apache.md @@ -18,6 +18,10 @@ This plugin can also get some global statistics (eg. the number of connections, **The minimal supported version of Apache is 2.0.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Apache" %} + ## Configuration ### Configure Apache server-status diff --git a/_docs_agent/plugins/calico.md b/_docs_agent/plugins/calico.md index 204fc65..21b99be 100644 --- a/_docs_agent/plugins/calico.md +++ b/_docs_agent/plugins/calico.md @@ -12,6 +12,10 @@ More information on: [https://www.projectcalico.org](https://www.projectcalico.o The core Calico component is Felix. Felix exposes metrics through a Prometheus endpoint. This plugin gathers Calico metrics from the Felix metrics endpoint, parses the metrics and pushes them to CoScale. +## Installation + +{% include_relative _installation.md orchestrator="false" service="Calico" %} + ## Configuration The list of endpoints exposing Calico metrics is required. diff --git a/_docs_agent/plugins/cassandra.md b/_docs_agent/plugins/cassandra.md index 6b69879..a0f54ff 100644 --- a/_docs_agent/plugins/cassandra.md +++ b/_docs_agent/plugins/cassandra.md @@ -15,6 +15,10 @@ This plugin gathers some global statistics from your Cassandra server. It gets these statistics using Cassandra's JMX interface. +## Installation + +{% include_relative _installation.md orchestrator="false" service="Cassandra" %} + ## Configuration ### Enable JMX Connection diff --git a/_docs_agent/plugins/collectd.md b/_docs_agent/plugins/collectd.md index 7a9afaa..96fe69d 100644 --- a/_docs_agent/plugins/collectd.md +++ b/_docs_agent/plugins/collectd.md @@ -14,6 +14,10 @@ Collectd gathers statistics about the system it is running on and stores this in The UnixSock collectd plugin opens a UNIX domain socket and accepts connections. Using this socket CoScale Agent can send commands to the daemon and receive information. +## Installation + +{% include_relative _installation.md orchestrator="false" service="CollectD" %} + ## Configuration CoScale agent communicates with collectd through UnixSock collectd plugin . @@ -25,7 +29,7 @@ Uncomment the following line: Add to the end of the configuration file (before include directive), the following lines: -{% highlight xml %} +{% highlight xml %} SocketFile "/var/run/csplugin-unixsock" SocketGroup "collectd" diff --git a/_docs_agent/plugins/couchbase.md b/_docs_agent/plugins/couchbase.md index 2d44e5b..c4e3abd 100644 --- a/_docs_agent/plugins/couchbase.md +++ b/_docs_agent/plugins/couchbase.md @@ -4,7 +4,7 @@ title: Couchbase plugin description: Information on the metrics collected by the CoScale Couchbase plugin. --- -> Couchbase Server is an open source, distributed, NoSQL document-oriented database. It exposes a fast key-value store with managed cache for submillisecond data operations, purpose-built indexers for fast queries and a query engine for executing SQL-like queries. For mobile and Internet of Things environments Couchbase Lite runs natively on-device and manages synchronization to Couchbase Server. Couchbase Server is specialized to provide low-latency data management for large-scale interactive web, mobile, and IoT applications. +> Couchbase Server is an open source, distributed, NoSQL document-oriented database. It exposes a fast key-value store with managed cache for submillisecond data operations, purpose-built indexers for fast queries and a query engine for executing SQL-like queries. For mobile and Internet of Things environments Couchbase Lite runs natively on-device and manages synchronization to Couchbase Server. Couchbase Server is specialized to provide low-latency data management for large-scale interactive web, mobile, and IoT applications. More information on: [https://www.couchbase.com/](https://www.couchbase.com/) @@ -14,6 +14,10 @@ The Couchbase plugin gathers statistics such as the number of operations, connec **The minimal supported version of Couchbase is 2.5** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Couchbase" %} + ## Configuration ### Active checks diff --git a/_docs_agent/plugins/couchdb.md b/_docs_agent/plugins/couchdb.md index f35df25..e81b41d 100644 --- a/_docs_agent/plugins/couchdb.md +++ b/_docs_agent/plugins/couchdb.md @@ -14,6 +14,10 @@ CouchDB CoScale plugin lets you inspect how CouchDB performs. The plugin collect **The minimal supported version of CouchDB is 1.5** +## Installation + +{% include_relative _installation.md orchestrator="false" service="CouchDB" %} + ## Configuration ### Active checks diff --git a/_docs_agent/plugins/cron.md b/_docs_agent/plugins/cron.md index 210acbf..5bcb88a 100644 --- a/_docs_agent/plugins/cron.md +++ b/_docs_agent/plugins/cron.md @@ -20,7 +20,11 @@ There is also a [wrapper script]({{ site.baseurl }}/events/wrappers/linux/index/ ## Requirements * [CoScale Agent installed]({{ site.baseurl }}/agent/index) -We currently do not support Redhat < 6.0, you can still use [the cron-wrapper]({{ site.baseurl }}/events/wrappers/linux/index/) for these systems. +We currently do not support Redhat < 6.0, you can still use [the cron-wrapper]({{ site.baseurl }}/events/wrappers/linux/index/) for these systems. + +## Installation + +{% include_relative _installation.md orchestrator="false" service="Cron" %} ## Configuration diff --git a/_docs_agent/plugins/docker-swarm.md b/_docs_agent/plugins/docker-enterprise.md similarity index 60% rename from _docs_agent/plugins/docker-swarm.md rename to _docs_agent/plugins/docker-enterprise.md index 839d099..b6b1a26 100644 --- a/_docs_agent/plugins/docker-swarm.md +++ b/_docs_agent/plugins/docker-enterprise.md @@ -1,17 +1,21 @@ --- layout: page -title: Docker Swarm plugin +title: Docker Enterprise plugin description: Information on the metrics collected by the CoScale Docker Swarm plugin. --- -> Docker Swarm is native clustering for Docker. It turns a pool of Docker hosts into a single, virtual Docker host. Because Docker Swarm serves the standard Docker API, any tool that already communicates with a Docker daemon can use Swarm to transparently scale to multiple hosts. +> Docker Enterprise Edition (EE) 2.0 is the only enterprise-ready container platform that enables IT leaders to choose how to cost-effectively build and manage their entire application portfolio at their own pace, without fear of architecture and infrastructure lock-in. Docker’s container platform enables organizations to accelerate digital and multi-cloud initiatives by automating the delivery of legacy and modern applications using an agile operating model with integrated security. Because Docker EE includes services, support and training, organizations have a complete containerization strategy for supporting an ever-changing business environment. -More information on: [https://docs.docker.com/swarm/overview/](https://docs.docker.com/swarm/overview/) +More information on: [https://www.docker.com/enterprise-edition](https://www.docker.com/enterprise-edition). **This plugin also supports Docker Swarm.** ## How it works This plugin retrieves data from the Docker Swarm API on the distribution of containers, active services, node status, and failed tasks. The Docker API is exposed by default and no additional configuration is required. +## Installation + +{% include_relative _installation.md orchestrator="true" %} + ## Events * When node is draining diff --git a/_docs_agent/plugins/docker.md b/_docs_agent/plugins/docker.md index fa73e61..fc57bd0 100644 --- a/_docs_agent/plugins/docker.md +++ b/_docs_agent/plugins/docker.md @@ -11,37 +11,13 @@ More information on: [https://www.docker.com/](https://www.docker.com/) ## How it works The CoScale agent detects running containers on your system and starts gathering resources without any configuration. To have a more in-depth view on the process within the container you need to active the CoScale incontainer monitoring system. -The in-container system uses CoScale plugins to gather data from the process running in the container. You can find a full [list of our plugins on the Agent page](/agent/index/#plugins). CoScale requires some configuration to be able to detect which containers to monitor. You can find more information in the [configuration section](#configuration) +The in-container system uses CoScale plugins to gather data from the process running in the container. You can find a full [list of our plugins on the Agent page](/agent/index/#integrations). CoScale requires some configuration to be able to detect which containers to monitor. You can find [more information on our application monitoring documentation]({{ site.baseurl }}/agent/application-monitoring). The plugin will be started within the namespace of the running container, this has the advantage that you do not have to expose any ports or mount the filesystem for the CoScale in-container monitoring to be able to do its job. -## Configuration +## Installation -Go the agent page by going to `Datasources > Agent` in the sidebar. Click configure next to the agent you want to update. - -### Monitor based on Docker labels - -The agent will automatically start to monitor all Docker containers which have a label that starts with `com.coscale.monitoring` and contains a list of plugins and their configuration. These labels can be generated by clicking on the `Generate Docker labels` button under the configuration pane. You can mark an image to be monitored by placing the generated label in your Dockerfile: - -{% highlight docker %} -LABEL com.coscale.monitoring='[{"PluginType":"GENERICSCRIPT","Configuration":{"SCRIPT":["/script.sh"]}}]' -{% endhighlight %} - -For already existing images the label can also be specified when creating containers, in the `docker run` command via the `--label` or `--label-file` options: - -{% highlight bash %} -docker run -d --label com.coscale.monitoring='[{"PluginType":"CASSANDRA","Configuration":{"JMX HOSTNAME":["localhost"],"JMX PORT":["7199"]}}]' cassandra -{% endhighlight %} - -Note that if the container's base image already has the 'com.coscale.monitoring' label, adding it again on `docker run` will overwrite the configuration in the base image. If instead want to extend the list of plugins defined in the base image, you can use a different label name in the `docker run` command, for example `com.coscale.monitoring.extra`. - -You can find some more example images on our [Github repository](https://github.com/CoScale/docker-adapted), including prebuild images on our [Docker Hub](https://hub.docker.com/u/coscale/). - -### Configure the CoScale Docker agent with image detection - -An alternative option is to add each Docker image that you would like to monitor to our UI, you also need to add a set of plugins to be installed when a container with your image is running. Our image and tag detection can use wildcards, so "jboss-*" will trigger on all images that start with "jboss". After adding a plugin, you will receive instructions on how to setup your Docker container so that our agent can monitor it. - -Screenshot of Docker configuration +{% include_relative _installation.md orchestrator="false" %} ## Events diff --git a/_docs_agent/plugins/dotnetcore.md b/_docs_agent/plugins/dotnetcore.md index de3073c..854c1ff 100644 --- a/_docs_agent/plugins/dotnetcore.md +++ b/_docs_agent/plugins/dotnetcore.md @@ -14,6 +14,9 @@ This plugin analyzes the performance of your .NET Core application. **The minimal supported version of .NET Core is 1.1.x.** +## Installation + +{% include_relative _installation.md orchestrator="false" service=".NET Core" %} ## Configuration diff --git a/_docs_agent/plugins/dropwizard.md b/_docs_agent/plugins/dropwizard.md index 4c8d723..bdf431f 100644 --- a/_docs_agent/plugins/dropwizard.md +++ b/_docs_agent/plugins/dropwizard.md @@ -14,6 +14,10 @@ This plugin analyzes the performance of your Dropwizard web application. It capt **The minimal supported version of Dropwizard is 1.0.0.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Dropwizard" %} + ## Global statistics For gathering global statistics (eg. number of connections, etc.), the metrics page should be enabled. @@ -27,7 +31,7 @@ server: port: 8081 {% endhighlight %} -Restart the application to apply these changes. +Restart the application to apply these changes. Provide the metrics URL, as you configured it on your server. ## Log configuration @@ -44,13 +48,13 @@ server: archivedLogFilenamePattern: /var/log/dropwizard-app/accedd-%d.log.gz {% endhighlight %} -Restart Dropwizard application to apply these changes. +Restart Dropwizard application to apply these changes. Provide the location of the access log file you configured and the log format. For example, -Filename: `/var/log/dropwizard-app/access.log` +Filename: `/var/log/dropwizard-app/access.log` Log format: `%h "%r" %D %s %b` | Value | Original Value | Remarks | diff --git a/_docs_agent/plugins/elasticsearch.md b/_docs_agent/plugins/elasticsearch.md index 55cb6d5..c067df2 100644 --- a/_docs_agent/plugins/elasticsearch.md +++ b/_docs_agent/plugins/elasticsearch.md @@ -1,6 +1,6 @@ --- layout: page -title: ElasticSearch plugin +title: Elasticsearch plugin description: Information on the metrics collected by the CoScale ElasticSearch plugin. --- @@ -16,6 +16,10 @@ These statistics include information about the processes, threads, network and J **The minimal supported version of ElasticSearch is 0.90.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Elasticsearch" %} + ## Configuration ### Active checks diff --git a/_docs_agent/plugins/fluentd.md b/_docs_agent/plugins/fluentd.md index fcfd75c..73eef0f 100644 --- a/_docs_agent/plugins/fluentd.md +++ b/_docs_agent/plugins/fluentd.md @@ -12,6 +12,10 @@ More information on: [https://www.fluentd.org](https://www.fluentd.org) This plugin gets statistics about Fluentd. +## Installation + +{% include_relative _installation.md orchestrator="false" service="FluentD" %} + ## Configuration Fluentd has a monitoring agent to retrieve internal metrics in JSON via HTTP. Please add the following lines to your configuration file: diff --git a/_docs_agent/plugins/golang.md b/_docs_agent/plugins/golang.md index ad547c1..7114cb3 100644 --- a/_docs_agent/plugins/golang.md +++ b/_docs_agent/plugins/golang.md @@ -12,6 +12,10 @@ More information on: [https://golang.org/](https://golang.org/) Because Golang has no default logging or metrics endpoint we need to include one in our application. We will use the [Golang prometheus library](https://github.com/prometheus/client_golang) together with the CoScale Prometheus endpoint parser to retrieve metrics from the standard Golang runtime as well as provide a possibility to extend it with custom metrics. +## Installation + +{% include_relative _installation.md orchestrator="false" service="Golang" %} + ## Configuration ### Configure your Golang application to provide a Prometheus endpoint diff --git a/_docs_agent/plugins/hana.md b/_docs_agent/plugins/hana.md index 53209b6..5cb5396 100644 --- a/_docs_agent/plugins/hana.md +++ b/_docs_agent/plugins/hana.md @@ -12,6 +12,10 @@ More information on: [https://www.sap.com/products/hana.html](https://www.sap.co The plugin gathers statistics for Hana DB. +## Installation + +{% include_relative _installation.md orchestrator="false" service="Hana" %} + ## Configuration ### Connection diff --git a/_docs_agent/plugins/haproxy.md b/_docs_agent/plugins/haproxy.md index fe4d930..5adac96 100644 --- a/_docs_agent/plugins/haproxy.md +++ b/_docs_agent/plugins/haproxy.md @@ -16,12 +16,16 @@ The plugin gathers statistics like: number of requests, bytes sent and received, **The minimal supported version of HaProxy is 1.5.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="HAProxy" %} + ## Configuration ### Global stats For gathering global stats you need to add the next lines in `/etc/haproxy/haproxy.cfg` -{% highlight haproxy %} +{% highlight haproxy %} listen http-in bind localhost:1936 stats enable @@ -36,7 +40,7 @@ listen http-in To enable custom logs on haproxy add next lines to `/etc/haproxy/haproxy.cfg` under defaults section If you are using a custom log format, make sure that option httplog is not enabled. -{% highlight haproxy %} +{% highlight haproxy %} defaults mode http log-format %hr\ %{+Q}r\ %Tt\ %ST\ %B diff --git a/_docs_agent/plugins/iis.md b/_docs_agent/plugins/iis.md index 2d79f81..dcf8dd1 100644 --- a/_docs_agent/plugins/iis.md +++ b/_docs_agent/plugins/iis.md @@ -4,8 +4,22 @@ title: Internet Information Services plugin description: Information on the metrics collected by the CoScale IIS plugin. --- +> Internet Information Services (IIS) for Windows® Server is a flexible, secure and manageable Web server for hosting anything on the Web. From media streaming to web applications, IIS's scalable and open architecture is ready to handle the most demanding tasks. + +More information on: [https://www.iis.net/](https://www.iis.net/) + +## How it works + +The plugin gathers global statistics using the performance counter client. No configuration is needed. It captures traffic rates, latencies and response codes of requests sent to the web server by parsing the IIS access log file. See next step for more information. + +**The minimal supported version of IIS is 7.0.** + ## Installation +{% include_relative _installation.md orchestrator="false" service="IIS" %} + +## Configuration + 1. Open "Internet Information Services (IIS) Manager" 2. Select the connection to your server. diff --git a/_docs_agent/plugins/jboss.md b/_docs_agent/plugins/jboss.md index 6f3c5b2..f1ea00b 100644 --- a/_docs_agent/plugins/jboss.md +++ b/_docs_agent/plugins/jboss.md @@ -16,6 +16,10 @@ It captures traffic rates, latencies and response codes of requests sent to the **The minimal supported version of JBoss is 7.1.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="JBoss" %} + ## Configuration ### Configure your JBoss JMX connection @@ -27,7 +31,7 @@ To enable collecting general statistics for JBoss, you have to enable JMX. You c In your `` update the following lines in `/standalone/configuration/standalone.xml` Replace -{% highlight xml %} +{% highlight xml %} @@ -35,7 +39,7 @@ Replace {% endhighlight %} With -{% highlight xml %} +{% highlight xml %} @@ -48,7 +52,7 @@ Before you can run the JBoss Application Server, you need to ensure that you've Add the following to your JBoss configuration (eg. `/bin/standalone.conf`). Don't forget to replace the `` placeholder by your installation path. -{% highlight bash %} +{% highlight bash %} JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=1090 \ -Dcom.sun.management.jmxremote.authenticate=false \ -Dcom.sun.management.jmxremote \ @@ -64,14 +68,14 @@ JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=1090 \ To measure performance of all http requests, enable the JBoss access log by adding the next lines in the `` tag in your configuration file: -{% highlight xml %} +{% highlight xml %} {% endhighlight %} Example: -{% highlight xml %} +{% highlight xml %} @@ -104,7 +108,7 @@ Another log format that will work: Where `xxx` is a servlet of your choice. To enable access logging in JBoss version 5 and version 6, uncomment these lines in server.xml: -{% highlight xml %} +{% highlight xml %} MongoDB is an open-source, document database designed for ease of development and scaling. MongoDB stores data using a flexible document data model that is similar to JSON. Documents contain one or more fields, including arrays, binary data and sub-documents. Fields can vary from document to document. This flexibility allows development teams to evolve the data model rapidly as their application requirements change. When you need to lock down your data model, optional document validation enforces the rules you choose. Unlike most NoSQL databases, MongoDB provides comprehensive secondary indexes, including geospatial and text search, as well as extensive security and aggregation capabilities. +> MongoDB is an open-source, document database designed for ease of development and scaling. MongoDB stores data using a flexible document data model that is similar to JSON. Documents contain one or more fields, including arrays, binary data and sub-documents. Fields can vary from document to document. This flexibility allows development teams to evolve the data model rapidly as their application requirements change. When you need to lock down your data model, optional document validation enforces the rules you choose. Unlike most NoSQL databases, MongoDB provides comprehensive secondary indexes, including geospatial and text search, as well as extensive security and aggregation capabilities. More information on: [https://www.mongodb.com/](https://www.mongodb.com/) @@ -16,6 +16,10 @@ These statistics are gathered by default and no additional configuration is requ **The minimal supported version of MongoDB is 2.2.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="MongoDB" %} + ## Configuration ### Connection details diff --git a/_docs_agent/plugins/mssql.md b/_docs_agent/plugins/mssql.md index 1de0931..a4602bc 100644 --- a/_docs_agent/plugins/mssql.md +++ b/_docs_agent/plugins/mssql.md @@ -14,6 +14,10 @@ The plugin gathers global stats using the performance counter client. The MSSQL **The minimal supported version of MSSQL is 2008 R2.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="MSSQL" %} + ## Configuration ### Database connection diff --git a/_docs_agent/plugins/mysql.md b/_docs_agent/plugins/mysql.md index 0d1b56b..903d7ec 100644 --- a/_docs_agent/plugins/mysql.md +++ b/_docs_agent/plugins/mysql.md @@ -18,6 +18,10 @@ There are 2 mechanisms to retrieve performance metrics about your queries. The p **The minimal supported version of MySQL is 5.1 for the slow query log and 5.7 for performance schema.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="MySQL" %} + ## Configuration ### Global stats diff --git a/_docs_agent/plugins/nginx.md b/_docs_agent/plugins/nginx.md index 1330480..416f08c 100644 --- a/_docs_agent/plugins/nginx.md +++ b/_docs_agent/plugins/nginx.md @@ -1,6 +1,6 @@ --- layout: page -title: NGINX plugin +title: Nginx plugin description: Information on the metrics collected by the CoScale NGINX plugin. --- @@ -18,6 +18,10 @@ Both the access log and server-status require a bit of configuration, see next s **The minimal supported version of Nginx is 0.5.38.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Nginx" %} + ## Configuration ### Configure Nginx status page @@ -26,7 +30,7 @@ For gathering global statistics, the `nginx_status` page should be enabled. Enable the status page by adding the following lines inside the http section of your `/nginx.conf`. -{% highlight nginx %} +{% highlight nginx %} http { ... server { @@ -50,7 +54,7 @@ For the plugin to be able to collect statistics about http requests, the access Make sure to update the default access_log `/var/log/nginx/access.log` line with the one provided below. -{% highlight nginx %} +{% highlight nginx %} http { ... log_format CoScale '$server_name "$request" $request_time $status $request_length $bytes_sent'; diff --git a/_docs_agent/plugins/nodejs.md b/_docs_agent/plugins/nodejs.md index d77321d..84621ce 100644 --- a/_docs_agent/plugins/nodejs.md +++ b/_docs_agent/plugins/nodejs.md @@ -12,6 +12,10 @@ More information on: [https://nodejs.org/en/](https://nodejs.org/en/) Because NodeJS has no logging or status page by default we need to include one in our application. The configuration and setup depends on the framework being used. At the moment CoScale supports [express.js](http://expressjs.com/) together with [prom-client](https://github.com/siimon/prom-client) to retrieve performance and request data. +## Installation + +{% include_relative _installation.md orchestrator="false" service="Nodejs" %} + ## Configuration ### Configure your NodeJS application to expose a prometheus endpoint diff --git a/_docs_agent/plugins/openshift.md b/_docs_agent/plugins/openshift.md index e1a893c..3004419 100644 --- a/_docs_agent/plugins/openshift.md +++ b/_docs_agent/plugins/openshift.md @@ -10,12 +10,16 @@ More information on: [https://www.openshift.com/](https://www.openshift.com/) ## How it works -The plugin analyzes the performance of your Openshift environment. It retrieves the same information as the [Kubernetes plugin](/agent/plugins/kubernetes/), and is therefore configured in a similar matter. +The plugin analyzes the performance of your Openshift environment. It retrieves the same information as the [Kubernetes plugin](/agent/plugins/kubernetes/), and is therefore configured in a similar matter. In addition to standard Kubernetes metrics, the Openshift plugin also retrieves information on the projects, builds, and deployments within Openshift. For more information, check out [our documentation on Kubernetes](/agent/plugins/kubernetes/). +## Installation + +{% include_relative _installation.md orchestrator="true" service="Openshift" %} + ## Metrics | Metric name | Metric unit | diff --git a/_docs_agent/plugins/oracle.md b/_docs_agent/plugins/oracle.md index 2610a17..474cabe 100644 --- a/_docs_agent/plugins/oracle.md +++ b/_docs_agent/plugins/oracle.md @@ -14,13 +14,17 @@ The CoScale Oracle plugin lets you inspect how Oracle performs. The plugin colle **The supported versions of Oracle are 11g and 11g.2, please contact support for other versions.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Oracle" %} + ## Configuration ### Authentication In order for CoScale to be able to access the required data these next few queries need to be executed on the server. -{% highlight sql %} +{% highlight sql %} CREATE USER coscale IDENTIFIED BY password; GRANT CREATE SESSION TO coscale; GRANT SELECT ANY DICTIONARY TO coscale; diff --git a/_docs_agent/plugins/postgresql.md b/_docs_agent/plugins/postgresql.md index 9167e5a..49a5ba6 100644 --- a/_docs_agent/plugins/postgresql.md +++ b/_docs_agent/plugins/postgresql.md @@ -18,6 +18,10 @@ Query statistics such as queries per second, latencies and errors are retrieved **The minimal supported version of PostgreSQL is 9.0.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="PostgreSQL" %} + ## Configuration ### Enable pg_stat_statements diff --git a/_docs_agent/plugins/prometheus.md b/_docs_agent/plugins/prometheus.md index 4db8d67..cbc57bc 100644 --- a/_docs_agent/plugins/prometheus.md +++ b/_docs_agent/plugins/prometheus.md @@ -12,6 +12,10 @@ More information on: [https://prometheus.io/](https://prometheus.io/) This plugin gathers metrics from a Prometheus endpoint. It parses the metrics and dimensions defined by the Prometheus endpoint and pushes them to CoScale. +## Installation + +{% include_relative _installation.md orchestrator="false" service="Prometheus" %} + ## Configuration ## Prometheus Connection diff --git a/_docs_agent/plugins/rabbitmq.md b/_docs_agent/plugins/rabbitmq.md index 6dd25fd..c8cd65f 100644 --- a/_docs_agent/plugins/rabbitmq.md +++ b/_docs_agent/plugins/rabbitmq.md @@ -14,6 +14,10 @@ The plugin gathers statistics (memory usage, queue length, etc) for RabbitMQ by **The minimal supported version of RabbitMQ is 2.7.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="RabbitMQ" %} + ## Configuration ### Enable RabbitMQ management diff --git a/_docs_agent/plugins/redis.md b/_docs_agent/plugins/redis.md index f75da8b..9bfabc8 100644 --- a/_docs_agent/plugins/redis.md +++ b/_docs_agent/plugins/redis.md @@ -16,6 +16,10 @@ These statistics are gathered by default and no additional configuration is requ **The minimal supported version of Redis is 2.6.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Redis" %} + ## Configuration ### Connection diff --git a/_docs_agent/plugins/resources.md b/_docs_agent/plugins/resources.md index 84020c9..db9b563 100644 --- a/_docs_agent/plugins/resources.md +++ b/_docs_agent/plugins/resources.md @@ -10,6 +10,10 @@ description: Information on the metrics collected by the CoScale Resources plugi The plugin gathers OS and hardware metrics from the underlying system. No configuration is required. Below you can find the metrics list for [Linux](#linux-metrics) and [Windows](#windows-metrics). +## Installation + +{% include_relative _installation.md orchestrator="false" %} + ## Linux Metrics ### CPU diff --git a/_docs_agent/plugins/riak.md b/_docs_agent/plugins/riak.md index e937a50..847b644 100644 --- a/_docs_agent/plugins/riak.md +++ b/_docs_agent/plugins/riak.md @@ -14,6 +14,10 @@ This plugin analyzes the performance of your Riak server. No additional configur **The minimal supported version of riak-admin is 1.2.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Riak" %} + ## Events * Service state diff --git a/_docs_agent/plugins/solr.md b/_docs_agent/plugins/solr.md index 63ed630..16d3006 100644 --- a/_docs_agent/plugins/solr.md +++ b/_docs_agent/plugins/solr.md @@ -14,6 +14,10 @@ The plugin can get statistics about Solr collections using the JMX interface. It **The minimal supported version of Solr is 5.2.0** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Solr" %} + ## Configuration ### Enable JMX diff --git a/_docs_agent/plugins/spring-boot.md b/_docs_agent/plugins/spring-boot.md index 2beed67..b157fb2 100644 --- a/_docs_agent/plugins/spring-boot.md +++ b/_docs_agent/plugins/spring-boot.md @@ -12,6 +12,10 @@ More information on: [https://projects.spring.io/spring-boot/](https://projects. This plugin analyzes the performance of your SprintBoot web server. It captures traffic rates, latencies and response codes of http requests sent to the web server by parsing the access log file. The plugin can optionally get global statistics (eg. the number of sessions, the number of workers, etc.) and component health status by using the Spring Boot actuator endpoint. +## Installation + +{% include_relative _installation.md orchestrator="false" service="Spring Boot" %} + ## Configuration ### Configure the actuator endpoint diff --git a/_docs_agent/plugins/tomcat.md b/_docs_agent/plugins/tomcat.md index fd55274..5c7b5fa 100644 --- a/_docs_agent/plugins/tomcat.md +++ b/_docs_agent/plugins/tomcat.md @@ -18,6 +18,10 @@ Both the access log and JMX proxy require a bit of configuration, see next steps **The minimal supported version of Tomcat is 7.0.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Tomcat" %} + ## Configuration ### Configure JMX proxy diff --git a/_docs_agent/plugins/varnish.md b/_docs_agent/plugins/varnish.md index 57f3158..bf23847 100644 --- a/_docs_agent/plugins/varnish.md +++ b/_docs_agent/plugins/varnish.md @@ -14,6 +14,10 @@ This plugin analyzes the performance of your Varnish web server. It captures tra **The minimal supported version of Varnish is 4.0.** +## Installation + +{% include_relative _installation.md orchestrator="false" service="Varnish" %} + ## Configuration ### Configure your Varnish access logs diff --git a/_docs_other/datasources.md b/_docs_other/datasources.md index ffb2e14..9ee5309 100644 --- a/_docs_other/datasources.md +++ b/_docs_other/datasources.md @@ -127,17 +127,17 @@ description: An overview of all CoScale datasources. Aweber icon Aweber - + - + - +
Google Analytics icon Google Analytics @@ -147,7 +147,7 @@ description: An overview of all CoScale datasources. Mailchimp icon Mailchimp
- + @@ -199,7 +199,7 @@ description: An overview of all CoScale datasources.

CoScale agent

Data collection from many services running on your machine. - +

Container monitoring

@@ -212,7 +212,7 @@ description: An overview of all CoScale datasources.
@@ -226,7 +226,7 @@ description: An overview of all CoScale datasources.
- +

Generic monitoring

@@ -341,7 +341,7 @@ description: An overview of all CoScale datasources.

NoSQL

Plugins for NoSQL databases. - + - + - + - + - + - +
Cassandra icon Cassandra @@ -395,17 +395,17 @@ description: An overview of all CoScale datasources.

Other

Plugins for additional services. - + - + - +
ActiveMQ icon ActiveMQ @@ -480,7 +480,7 @@ description: An overview of all CoScale datasources. Cron icon Cron jobs
- +
CLI icon Coscale CLI diff --git a/css/main.scss b/css/main.scss index 1a1e14c..9e009ea 100755 --- a/css/main.scss +++ b/css/main.scss @@ -436,6 +436,17 @@ body { } } +// Custom for agent/index page +.row .technology { + padding: 10px; + img { + display: block; + margin: 0 auto; + padding-bottom: 5px; + } + text-align: center; +} + /* * Custom for technologies page */