This is an automated email from the ASF dual-hosted git repository.

bossenti pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/streampipes.git


The following commit(s) were added to refs/heads/dev by this push:
     new 06016fc0f extend CLI by monitoring stack (#2256)
06016fc0f is described below

commit 06016fc0f3d09a656799e3e3d8f666df58ad5b32
Author: Tim <[email protected]>
AuthorDate: Fri Dec 1 10:17:48 2023 +0100

    extend CLI by monitoring stack (#2256)
    
    * chore: extend CLI by monitoring stack
    
    * chore: extend dependabot config by new docker images
    
    * chore: add env variable to backend & extensions service container
---
 .github/dependabot.yml                             | 24 ++++++++---
 installer/cli/.env                                 |  5 +++
 .../deploy/standalone/backend/docker-compose.yml   |  1 +
 .../extensions-all-jvm/docker-compose.yml          |  2 +
 .../alertmanager.yml}                              | 23 +----------
 .../docker-compose.dev.yml}                        | 28 ++++---------
 .../docker-compose.yml                             | 24 ++++-------
 .../docker-compose.dev.yml}                        | 28 ++++---------
 .../docker-compose.yml                             | 25 +++++-------
 .../deploy/standalone/prometheus/prometheus.yml    | 47 ++++++++++++++++++++++
 .../full-monitoring}                               | 36 +++++++----------
 .../lite-monitoring}                               | 34 ++++++----------
 12 files changed, 133 insertions(+), 144 deletions(-)

diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index 822b365e9..d48dddaa5 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -22,7 +22,6 @@ updates:
     schedule:
       interval: "daily"
     open-pull-requests-limit: 1
-
   - package-ecosystem: "docker"
     directory: "/installer/compose"
     labels:
@@ -31,7 +30,6 @@ updates:
     schedule:
       interval: "daily"
     open-pull-requests-limit: 1
-
   - package-ecosystem: "docker"
     directory: "/installer/cli/deploy/standalone/grafana"
     labels:
@@ -40,6 +38,22 @@ updates:
     schedule:
       interval: "daily"
     open-pull-requests-limit: 1
+  - package-ecosystem: "docker"
+    directory: "/installer/cli/deploy/standalone/prometheus"
+    labels:
+      - "dependencies"
+      - "installer"
+    schedule:
+      interval: "daily"
+    open-pull-requests-limit: 1
+  - package-ecosystem: "docker"
+    directory: "/installer/cli/deploy/standalone/prometheus-alertmanager"
+    labels:
+      - "dependencies"
+      - "installer"
+    schedule:
+      interval: "daily"
+    open-pull-requests-limit: 1
   - package-ecosystem: "github-actions"
     directory: "/"
     labels:
@@ -61,7 +75,7 @@ updates:
       interval: "daily"
     ignore:
       - dependency-name: "*"
-        update-types: ["version-update:semver-patch"]
+        update-types: [ "version-update:semver-patch" ]
     open-pull-requests-limit: 1
   - package-ecosystem: "npm"
     directory: "/ui/projects/streampipes/platform-services"
@@ -69,7 +83,7 @@ updates:
       interval: "daily"
     ignore:
       - dependency-name: "*"
-        update-types: ["version-update:semver-patch"]
+        update-types: [ "version-update:semver-patch" ]
     open-pull-requests-limit: 1
   - package-ecosystem: "npm"
     directory: "/ui/projects/streampipes/shared-ui"
@@ -77,7 +91,7 @@ updates:
       interval: "daily"
     ignore:
       - dependency-name: "*"
-        update-types: ["version-update:semver-patch"]
+        update-types: [ "version-update:semver-patch" ]
     open-pull-requests-limit: 1
   - package-ecosystem: "pip"
     directory: "/streampipes-client-python"
diff --git a/installer/cli/.env b/installer/cli/.env
index 4f899ce21..ce976949e 100644
--- a/installer/cli/.env
+++ b/installer/cli/.env
@@ -39,3 +39,8 @@ SP_PRIORITIZED_PROTOCOL=kafka
 # For database migration in v0.91.0 - set init mode to 'upgrade' to migrate an 
existing installation
 SP_INFLUX_INIT_MODE=setup
 #SP_INFLUX_INIT_MODE=upgrade
+
+# Monitoring
+# set to true if you want StreamPipes to expose Prometheus metrics
+#SP_SETUP_PROMETHEUS_ENDPOINT=true
+SP_SETUP_PROMETHEUS_ENDPOINT=false
diff --git a/installer/cli/deploy/standalone/backend/docker-compose.yml 
b/installer/cli/deploy/standalone/backend/docker-compose.yml
index c6f320022..9264132f6 100644
--- a/installer/cli/deploy/standalone/backend/docker-compose.yml
+++ b/installer/cli/deploy/standalone/backend/docker-compose.yml
@@ -25,6 +25,7 @@ services:
     environment:
       - SP_PRIORITIZED_PROTOCOL=${SP_PRIORITIZED_PROTOCOL:-kafka}
       - SP_MQTT_HOST=${SP_MQTT_HOST:-activemq}
+      - SP_SETUP_PROMETHEUS_ENDPOINT=${SP_SETUP_PROMETHEUS_ENDPOINT}
     logging:
       driver: "json-file"
       options:
diff --git 
a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml 
b/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
index a44655139..90686788d 100644
--- a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
+++ b/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
@@ -19,6 +19,8 @@ services:
     image: ${SP_DOCKER_REGISTRY}/extensions-all-jvm:${SP_VERSION}
     depends_on:
       - couchdb
+    environment:
+      - SP_SETUP_PROMETHEUS_ENDPOINT=${SP_SETUP_PROMETHEUS_ENDPOINT}
     volumes:
       - files:/spImages
     logging:
diff --git 
a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml 
b/installer/cli/deploy/standalone/prometheus-alertmanager/alertmanager.yml
similarity index 68%
copy from installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
copy to installer/cli/deploy/standalone/prometheus-alertmanager/alertmanager.yml
index a44655139..bbc7ee7fd 100644
--- a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
+++ b/installer/cli/deploy/standalone/prometheus-alertmanager/alertmanager.yml
@@ -13,25 +13,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-version: "3.4"
-services:
-  extensions-all-jvm:
-    image: ${SP_DOCKER_REGISTRY}/extensions-all-jvm:${SP_VERSION}
-    depends_on:
-      - couchdb
-    volumes:
-      - files:/spImages
-    logging:
-      driver: "json-file"
-      options:
-        max-size: "1m"
-        max-file: "1"
-    networks:
-      spnet:
+global:
 
-volumes:
-  files:
-
-networks:
-  spnet:
-    external: true
+## Add your configuration here
diff --git 
a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml 
b/installer/cli/deploy/standalone/prometheus-alertmanager/docker-compose.dev.yml
similarity index 68%
copy from installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
copy to 
installer/cli/deploy/standalone/prometheus-alertmanager/docker-compose.dev.yml
index a44655139..c6e6c834a 100644
--- a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
+++ 
b/installer/cli/deploy/standalone/prometheus-alertmanager/docker-compose.dev.yml
@@ -13,25 +13,11 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-version: "3.4"
+version: "3"
 services:
-  extensions-all-jvm:
-    image: ${SP_DOCKER_REGISTRY}/extensions-all-jvm:${SP_VERSION}
-    depends_on:
-      - couchdb
-    volumes:
-      - files:/spImages
-    logging:
-      driver: "json-file"
-      options:
-        max-size: "1m"
-        max-file: "1"
-    networks:
-      spnet:
-
-volumes:
-  files:
-
-networks:
-  spnet:
-    external: true
+  prometheus-alertmanager:
+    ports:
+      - "9093:9093"
+    command:
+      - --config.file=/etc/prometheus-alertmanager/alertmanager.yml
+      - --log.level=debug
diff --git 
a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml 
b/installer/cli/deploy/standalone/prometheus-alertmanager/docker-compose.yml
similarity index 74%
copy from installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
copy to 
installer/cli/deploy/standalone/prometheus-alertmanager/docker-compose.yml
index a44655139..4f7ed5316 100644
--- a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
+++ b/installer/cli/deploy/standalone/prometheus-alertmanager/docker-compose.yml
@@ -13,25 +13,17 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-version: "3.4"
+version: "3"
 services:
-  extensions-all-jvm:
-    image: ${SP_DOCKER_REGISTRY}/extensions-all-jvm:${SP_VERSION}
-    depends_on:
-      - couchdb
-    volumes:
-      - files:/spImages
-    logging:
-      driver: "json-file"
-      options:
-        max-size: "1m"
-        max-file: "1"
+  prometheus-alertmanager:
+    image: prom/alertmanager:v0.26.0
     networks:
       spnet:
-
-volumes:
-  files:
+    volumes:
+      - 
../prometheus-alertmanager/alertmanager.yml:/etc/prometheus-alertmanager/alertmanager.yml
+    command:
+      - --config.file=/etc/prometheus-alertmanager/alertmanager.yml
 
 networks:
   spnet:
-    external: true
+    external: true
\ No newline at end of file
diff --git 
a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml 
b/installer/cli/deploy/standalone/prometheus/docker-compose.dev.yml
similarity index 68%
copy from installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
copy to installer/cli/deploy/standalone/prometheus/docker-compose.dev.yml
index a44655139..d5728b61d 100644
--- a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
+++ b/installer/cli/deploy/standalone/prometheus/docker-compose.dev.yml
@@ -13,25 +13,11 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-version: "3.4"
+version: "3"
 services:
-  extensions-all-jvm:
-    image: ${SP_DOCKER_REGISTRY}/extensions-all-jvm:${SP_VERSION}
-    depends_on:
-      - couchdb
-    volumes:
-      - files:/spImages
-    logging:
-      driver: "json-file"
-      options:
-        max-size: "1m"
-        max-file: "1"
-    networks:
-      spnet:
-
-volumes:
-  files:
-
-networks:
-  spnet:
-    external: true
+  prometheus:
+    ports:
+      - "9090:9090"
+    command:
+      - --config.file=/etc/prometheus/prometheus.yml
+      - --log.level=debug
diff --git 
a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml 
b/installer/cli/deploy/standalone/prometheus/docker-compose.yml
similarity index 74%
copy from installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
copy to installer/cli/deploy/standalone/prometheus/docker-compose.yml
index a44655139..15bcfd0ca 100644
--- a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
+++ b/installer/cli/deploy/standalone/prometheus/docker-compose.yml
@@ -13,25 +13,18 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-version: "3.4"
+version: "3"
 services:
-  extensions-all-jvm:
-    image: ${SP_DOCKER_REGISTRY}/extensions-all-jvm:${SP_VERSION}
-    depends_on:
-      - couchdb
-    volumes:
-      - files:/spImages
-    logging:
-      driver: "json-file"
-      options:
-        max-size: "1m"
-        max-file: "1"
+  prometheus:
+    image: prom/prometheus:v2.48.0
     networks:
       spnet:
-
-volumes:
-  files:
+    volumes:
+      - ../prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
+      - ../prometheus/rules:/etc/prometheus/rules
+    command:
+      - --config.file=/etc/prometheus/prometheus.yml
 
 networks:
   spnet:
-    external: true
+    external: true
\ No newline at end of file
diff --git a/installer/cli/deploy/standalone/prometheus/prometheus.yml 
b/installer/cli/deploy/standalone/prometheus/prometheus.yml
new file mode 100644
index 000000000..daf866fcc
--- /dev/null
+++ b/installer/cli/deploy/standalone/prometheus/prometheus.yml
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+global:
+  scrape_interval: 10s # Set the scrape interval to every 10 seconds. Default 
is every 1 minute.
+  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is 
every 1 minute.
+  # scrape_timeout is set to the global default (10s).
+
+alerting:
+  alertmanagers:
+    - static_configs:
+        - targets:
+           - prometheus-alertmanager:9093
+
+# Load rules once and periodically evaluate them according to the global 
'evaluation_interval'.
+rule_files:
+  # add your rules files here
+  # - ./rules/demo.yml
+
+scrape_configs:
+  - job_name: "prometheus"
+    static_configs:
+      - targets: [ "localhost:9090" ]
+
+  - job_name: "backend"
+    metrics_path: "/streampipes-backend/actuator/prometheus"
+    static_configs:
+      - targets: [ "localhost:8030" ]
+    #bearer_token: ""
+    #bearer_token_file: ""
+
+  - job_name: "extensions-all-iiot"
+    metrics_path: "/actuator/prometheus"
+    static_configs:
+      - targets: [ "localhost:8090" ]
diff --git 
a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml 
b/installer/cli/environments/full-monitoring
similarity index 68%
copy from installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
copy to installer/cli/environments/full-monitoring
index a44655139..3cc41edb3 100644
--- a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
+++ b/installer/cli/environments/full-monitoring
@@ -13,25 +13,17 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-version: "3.4"
-services:
-  extensions-all-jvm:
-    image: ${SP_DOCKER_REGISTRY}/extensions-all-jvm:${SP_VERSION}
-    depends_on:
-      - couchdb
-    volumes:
-      - files:/spImages
-    logging:
-      driver: "json-file"
-      options:
-        max-size: "1m"
-        max-file: "1"
-    networks:
-      spnet:
-
-volumes:
-  files:
-
-networks:
-  spnet:
-    external: true
+[environment:full-monitoring]
+ui
+backend
+extensions-all-jvm
+couchdb
+jobmanager
+taskmanager
+zookeeper
+kafka
+influxdb
+pipeline-elements-all-flink
+grafana
+prometheus
+prometheus-alertmanager
diff --git 
a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml 
b/installer/cli/environments/lite-monitoring
similarity index 68%
copy from installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
copy to installer/cli/environments/lite-monitoring
index a44655139..d99f12c3e 100644
--- a/installer/cli/deploy/standalone/extensions-all-jvm/docker-compose.yml
+++ b/installer/cli/environments/lite-monitoring
@@ -13,25 +13,15 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-version: "3.4"
-services:
-  extensions-all-jvm:
-    image: ${SP_DOCKER_REGISTRY}/extensions-all-jvm:${SP_VERSION}
-    depends_on:
-      - couchdb
-    volumes:
-      - files:/spImages
-    logging:
-      driver: "json-file"
-      options:
-        max-size: "1m"
-        max-file: "1"
-    networks:
-      spnet:
-
-volumes:
-  files:
-
-networks:
-  spnet:
-    external: true
+[environment:lite-monitoring]
+ui
+backend
+consul
+couchdb
+kafka
+zookeeper
+influxdb
+extensions-all-jvm
+grafana
+prometheus
+prometheus-alertmanager

Reply via email to