From 3414dccf8a4d3986885e42899b267d90fe642a04 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Thu, 11 Jan 2024 14:09:34 +0000 Subject: [PATCH 01/22] Added logs to trace datadog --- files/startup.sh | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/files/startup.sh b/files/startup.sh index ab9aaee..a748e93 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -79,7 +79,14 @@ if [[ -n $RANGER_AUDIT_DB_URL ]]; then fi fi +echo "HELLO NEW WORLD" +echo $ENABLE_METRICS + if [ -n "$ENABLE_METRICS" ]; then + echo "INSIDE HELLO NEW WORLD" + + echo $ENABLE_METRICS + update_property.py hive.metastore.metrics.enabled true /etc/hive/conf/hive-site.xml #configure to send metrics to cloudwatch when running on ECS if [ -n "$ECS_CONTAINER_METADATA_URI" ]; then @@ -173,6 +180,10 @@ export AUX_CLASSPATH="/usr/share/java/mariadb-connector-java.jar" [[ ! -z $HIVE_DB_WHITELIST ]] && export AUX_CLASSPATH="$AUX_CLASSPATH:/usr/lib/apiary/apiary-metastore-auth-${APIARY_METASTORE_AUTH_VERSION}.jar" [[ ! -z $ENABLE_METRICS ]] && export AUX_CLASSPATH="$AUX_CLASSPATH:/usr/lib/apiary/apiary-metastore-metrics-${APIARY_METASTORE_METRICS_VERSION}-all.jar" +echo $ENABLE_METRICS +echo $AUX_CLASSPATH +echo "HELLO WORLD" + #configure container credentials provider when running in ECS if [ ! -z ${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI} ]; then update_property.py fs.s3a.aws.credentials.provider com.amazonaws.auth.ContainerCredentialsProvider /etc/hadoop/conf/core-site.xml From 27c5ca1e6b23787f3934e76ed72ae56231dbd604 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Thu, 11 Jan 2024 15:20:39 +0000 Subject: [PATCH 02/22] Added deploy snapshot.yml --- .github/workflows/deploy_snapshot.yml | 23 +++++++++++++++++++++++ .github/workflows/main.yml | 2 +- 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/deploy_snapshot.yml diff --git a/.github/workflows/deploy_snapshot.yml b/.github/workflows/deploy_snapshot.yml new file mode 100644 index 0000000..100ed14 --- /dev/null +++ b/.github/workflows/deploy_snapshot.yml @@ -0,0 +1,23 @@ +name: Docker Snapshot Release + +on: + workflow_dispatch: + +jobs: + apiary-docker-image: + name: Apiary Docker Image Checks + runs-on: ubuntu-22.04 + steps: + - name: Check out code + uses: actions/checkout@v2 + + - name: Ensure Apiary Docker Image Builds. + uses: docker/build-push-action@v1.1.0 + with: + dockerfile: "Dockerfile" + always_pull: true + tag_with_sha: true + repository: expediagroup/apiary-waggledance + username: ${{ secrets.DOCKER_HUB_USERNAME }} + password: ${{ secrets.DOCKER_HUB_PASSWORD }} + push: true \ No newline at end of file diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 637b757..0bede43 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -15,4 +15,4 @@ jobs: with: dockerfile: "Dockerfile" always_pull: true - push: false + push: true From 419de7853cc70c7ad246d3a21ec002e95f19a3b4 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Thu, 11 Jan 2024 15:25:22 +0000 Subject: [PATCH 03/22] Added deploy snapshot.yml --- .github/workflows/deploy_snapshot.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy_snapshot.yml b/.github/workflows/deploy_snapshot.yml index 100ed14..57ade7b 100644 --- a/.github/workflows/deploy_snapshot.yml +++ b/.github/workflows/deploy_snapshot.yml @@ -17,7 +17,7 @@ jobs: dockerfile: "Dockerfile" always_pull: true tag_with_sha: true - repository: expediagroup/apiary-waggledance + repository: expediagroup/apiary-metastore username: ${{ secrets.DOCKER_HUB_USERNAME }} password: ${{ secrets.DOCKER_HUB_PASSWORD }} push: true \ No newline at end of file From dd211c8e292c6cdcc2812f21e49b665d080c64f2 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Tue, 16 Jan 2024 12:03:25 +0000 Subject: [PATCH 04/22] Added for the inside condition --- files/startup.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/files/startup.sh b/files/startup.sh index 193a754..1333a07 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -94,6 +94,8 @@ if [ -n "$ENABLE_METRICS" ]; then update_property.py hive.metastore.metrics.enabled true /etc/hive/conf/hive-site.xml #configure to send metrics to cloudwatch when running on ECS if [ -n "$ECS_CONTAINER_METADATA_URI" ]; then + echo "INSIDE - ECS_CONTAINER_METADATA_URI" + export CLOUDWATCH_NAMESPACE="${INSTANCE_NAME}-metastore" export ECS_TASK_ID=$(wget -q -O - ${ECS_CONTAINER_METADATA_URI}/task|jq -r .TaskARN|awk -F/ '{ print $NF }') update_property.py hive.service.metrics.class com.expediagroup.apiary.extensions.metastore.metrics.CodahaleMetrics /etc/hive/conf/hive-site.xml From 0d11f5ed940a82044e65287e317e47137ab62e4f Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Tue, 23 Jan 2024 17:13:46 +0000 Subject: [PATCH 05/22] echo ECS_CONTAINER_METADATA_URI --- files/startup.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/files/startup.sh b/files/startup.sh index 1333a07..f26b5b8 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -91,6 +91,10 @@ if [ -n "$ENABLE_METRICS" ]; then echo $ENABLE_METRICS + echo "ECS_CONTAINER_METADATA_URI" + echo $ECS_CONTAINER_METADATA_URI + echo "ECS_CONTAINER_METADATA_URI_V4" + echo $ECS_CONTAINER_METADATA_URI_V4 update_property.py hive.metastore.metrics.enabled true /etc/hive/conf/hive-site.xml #configure to send metrics to cloudwatch when running on ECS if [ -n "$ECS_CONTAINER_METADATA_URI" ]; then From 12532d70bf8c410be2041a3e5b06560095616c1e Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Wed, 24 Jan 2024 14:32:12 +0000 Subject: [PATCH 06/22] kubernetes exporter here: EXPORTER_OPTS and HIVE_METASTORE_HADOOP_OPTS --- files/startup.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/files/startup.sh b/files/startup.sh index f26b5b8..aa67cf6 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -100,6 +100,8 @@ if [ -n "$ENABLE_METRICS" ]; then if [ -n "$ECS_CONTAINER_METADATA_URI" ]; then echo "INSIDE - ECS_CONTAINER_METADATA_URI" + export HIVE_METASTORE_HADOOP_OPTS="$HIVE_METASTORE_HADOOP_OPTS -Djava.net.preferIPv4Stack=true -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" + export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" export CLOUDWATCH_NAMESPACE="${INSTANCE_NAME}-metastore" export ECS_TASK_ID=$(wget -q -O - ${ECS_CONTAINER_METADATA_URI}/task|jq -r .TaskARN|awk -F/ '{ print $NF }') update_property.py hive.service.metrics.class com.expediagroup.apiary.extensions.metastore.metrics.CodahaleMetrics /etc/hive/conf/hive-site.xml From 3c91ff753b24ce8a8e5387be4dd354b5be96ffa8 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Wed, 24 Jan 2024 14:32:28 +0000 Subject: [PATCH 07/22] kubernetes exporter here: EXPORTER_OPTS and HIVE_METASTORE_HADOOP_OPTS --- files/startup.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/files/startup.sh b/files/startup.sh index aa67cf6..958e3d2 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -102,6 +102,7 @@ if [ -n "$ENABLE_METRICS" ]; then export HIVE_METASTORE_HADOOP_OPTS="$HIVE_METASTORE_HADOOP_OPTS -Djava.net.preferIPv4Stack=true -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" + export CLOUDWATCH_NAMESPACE="${INSTANCE_NAME}-metastore" export ECS_TASK_ID=$(wget -q -O - ${ECS_CONTAINER_METADATA_URI}/task|jq -r .TaskARN|awk -F/ '{ print $NF }') update_property.py hive.service.metrics.class com.expediagroup.apiary.extensions.metastore.metrics.CodahaleMetrics /etc/hive/conf/hive-site.xml From 7d6a8fdba0996144260c9139527e9e6766aac46b Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Wed, 24 Jan 2024 14:35:22 +0000 Subject: [PATCH 08/22] logs --- files/startup.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/files/startup.sh b/files/startup.sh index 958e3d2..9577f91 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -103,6 +103,11 @@ if [ -n "$ENABLE_METRICS" ]; then export HIVE_METASTORE_HADOOP_OPTS="$HIVE_METASTORE_HADOOP_OPTS -Djava.net.preferIPv4Stack=true -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" + echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" + echo $HIVE_METASTORE_HADOOP_OPTS + echo $EXPORTER_OPTS + echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" + export CLOUDWATCH_NAMESPACE="${INSTANCE_NAME}-metastore" export ECS_TASK_ID=$(wget -q -O - ${ECS_CONTAINER_METADATA_URI}/task|jq -r .TaskARN|awk -F/ '{ print $NF }') update_property.py hive.service.metrics.class com.expediagroup.apiary.extensions.metastore.metrics.CodahaleMetrics /etc/hive/conf/hive-site.xml From e196f327167b4107bb01e739149e9181b8367e0b Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Tue, 30 Jan 2024 11:33:49 +0000 Subject: [PATCH 09/22] Added EXPORTER_OPTS --- files/startup.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/files/startup.sh b/files/startup.sh index 9577f91..c2a658b 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -100,13 +100,14 @@ if [ -n "$ENABLE_METRICS" ]; then if [ -n "$ECS_CONTAINER_METADATA_URI" ]; then echo "INSIDE - ECS_CONTAINER_METADATA_URI" - export HIVE_METASTORE_HADOOP_OPTS="$HIVE_METASTORE_HADOOP_OPTS -Djava.net.preferIPv4Stack=true -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" + #export HIVE_METASTORE_HADOOP_OPTS="$HIVE_METASTORE_HADOOP_OPTS -Djava.net.preferIPv4Stack=true -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" echo $HIVE_METASTORE_HADOOP_OPTS echo $EXPORTER_OPTS echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" + #export HADOOP_OPTS="$HADOOP_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9025 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -javaagent:/opt/java_metrics/jmx_prometheus_javaagent-0.3.0.jar=8080:/opt/java_metrics/config.yml -Dcom.sun.management.jmxremote.ssl=false $HEAP_OPTS" export CLOUDWATCH_NAMESPACE="${INSTANCE_NAME}-metastore" export ECS_TASK_ID=$(wget -q -O - ${ECS_CONTAINER_METADATA_URI}/task|jq -r .TaskARN|awk -F/ '{ print $NF }') From 457e09ec305602864804d9500a5673c4cb456123 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Tue, 30 Jan 2024 11:50:02 +0000 Subject: [PATCH 10/22] removed th eexports --- files/startup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/files/startup.sh b/files/startup.sh index c2a658b..2d39604 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -101,7 +101,7 @@ if [ -n "$ENABLE_METRICS" ]; then echo "INSIDE - ECS_CONTAINER_METADATA_URI" #export HIVE_METASTORE_HADOOP_OPTS="$HIVE_METASTORE_HADOOP_OPTS -Djava.net.preferIPv4Stack=true -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" - export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" + #export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" echo $HIVE_METASTORE_HADOOP_OPTS From da5eb5bb67c5e22d13eade29c46320c8ddca5aba Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Tue, 30 Jan 2024 12:13:42 +0000 Subject: [PATCH 11/22] trying HADOOP_OPTS --- files/startup.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/files/startup.sh b/files/startup.sh index 2d39604..dca77fc 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -103,11 +103,11 @@ if [ -n "$ENABLE_METRICS" ]; then #export HIVE_METASTORE_HADOOP_OPTS="$HIVE_METASTORE_HADOOP_OPTS -Djava.net.preferIPv4Stack=true -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" #export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" - echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" - echo $HIVE_METASTORE_HADOOP_OPTS - echo $EXPORTER_OPTS - echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" - #export HADOOP_OPTS="$HADOOP_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9025 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -javaagent:/opt/java_metrics/jmx_prometheus_javaagent-0.3.0.jar=8080:/opt/java_metrics/config.yml -Dcom.sun.management.jmxremote.ssl=false $HEAP_OPTS" + #echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" + #echo $HIVE_METASTORE_HADOOP_OPTS + #echo $EXPORTER_OPTS + #echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" + export HADOOP_OPTS="$HADOOP_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9025 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml -Dcom.sun.management.jmxremote.ssl=false $HEAP_OPTS" export CLOUDWATCH_NAMESPACE="${INSTANCE_NAME}-metastore" export ECS_TASK_ID=$(wget -q -O - ${ECS_CONTAINER_METADATA_URI}/task|jq -r .TaskARN|awk -F/ '{ print $NF }') From 99f4f2e95fea0abc9328c182ac3f3bf1d2899bc6 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Tue, 30 Jan 2024 14:20:01 +0000 Subject: [PATCH 12/22] trying EXPORTER_OPTS --- files/startup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/files/startup.sh b/files/startup.sh index dca77fc..ef474c9 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -101,7 +101,7 @@ if [ -n "$ENABLE_METRICS" ]; then echo "INSIDE - ECS_CONTAINER_METADATA_URI" #export HIVE_METASTORE_HADOOP_OPTS="$HIVE_METASTORE_HADOOP_OPTS -Djava.net.preferIPv4Stack=true -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" - #export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" + export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" #echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" #echo $HIVE_METASTORE_HADOOP_OPTS From e676eed5a233233931cf828eaec14408a82e5e0c Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Tue, 30 Jan 2024 14:37:36 +0000 Subject: [PATCH 13/22] trying curl --- Dockerfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Dockerfile b/Dockerfile index ca72ea3..45fff2b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -29,6 +29,7 @@ RUN yum -y install java-1.8.0-openjdk \ unzip \ jq \ tar \ + curl \ net-tools \ && yum clean all \ && rm -rf /var/cache/yum @@ -72,3 +73,5 @@ COPY files/log4j2-security.sh /tmp/log4j2-security.sh RUN chmod +x /tmp/log4j2-security.sh && /tmp/log4j2-security.sh CMD /startup.sh + +CMD ["curl", "-v", "localhost:8080/actuator/prometheus"] From b341577ac680c4c8af6f293d25e9aae2a8171446 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Tue, 30 Jan 2024 16:26:13 +0000 Subject: [PATCH 14/22] Working before the last commit but only 10 metrics flowing --- Dockerfile | 3 --- 1 file changed, 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 45fff2b..ca72ea3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -29,7 +29,6 @@ RUN yum -y install java-1.8.0-openjdk \ unzip \ jq \ tar \ - curl \ net-tools \ && yum clean all \ && rm -rf /var/cache/yum @@ -73,5 +72,3 @@ COPY files/log4j2-security.sh /tmp/log4j2-security.sh RUN chmod +x /tmp/log4j2-security.sh && /tmp/log4j2-security.sh CMD /startup.sh - -CMD ["curl", "-v", "localhost:8080/actuator/prometheus"] From 698ad482268ee3210890ca3005e3bc2888c20370 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Tue, 30 Jan 2024 17:56:17 +0000 Subject: [PATCH 15/22] Updated hive_site.xml to use com.expediagroup.apiary.extensions.metastore.metrics.CodahaleMetrics --- files/hive-site.xml | 2 +- files/startup.sh | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/files/hive-site.xml b/files/hive-site.xml index c4e271c..3b561a0 100644 --- a/files/hive-site.xml +++ b/files/hive-site.xml @@ -65,7 +65,7 @@ hive.service.metrics.class - org.apache.hadoop.hive.common.metrics.metrics2.CodahaleMetrics + com.expediagroup.apiary.extensions.metastore.metrics.CodahaleMetrics diff --git a/files/startup.sh b/files/startup.sh index ef474c9..2879374 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -100,13 +100,8 @@ if [ -n "$ENABLE_METRICS" ]; then if [ -n "$ECS_CONTAINER_METADATA_URI" ]; then echo "INSIDE - ECS_CONTAINER_METADATA_URI" - #export HIVE_METASTORE_HADOOP_OPTS="$HIVE_METASTORE_HADOOP_OPTS -Djava.net.preferIPv4Stack=true -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" - #echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" - #echo $HIVE_METASTORE_HADOOP_OPTS - #echo $EXPORTER_OPTS - #echo "HIVE_METASTORE_HADOOP_OPTS and EXPORTER_OPTS set" export HADOOP_OPTS="$HADOOP_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9025 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml -Dcom.sun.management.jmxremote.ssl=false $HEAP_OPTS" export CLOUDWATCH_NAMESPACE="${INSTANCE_NAME}-metastore" From 510193b2f219c29772fbc25c1a19ebf79dad2f35 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Wed, 31 Jan 2024 23:53:21 +0000 Subject: [PATCH 16/22] Removed echo --- files/hive-site.xml | 2 +- files/startup.sh | 11 ----------- 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/files/hive-site.xml b/files/hive-site.xml index 3b561a0..c4e271c 100644 --- a/files/hive-site.xml +++ b/files/hive-site.xml @@ -65,7 +65,7 @@ hive.service.metrics.class - com.expediagroup.apiary.extensions.metastore.metrics.CodahaleMetrics + org.apache.hadoop.hive.common.metrics.metrics2.CodahaleMetrics diff --git a/files/startup.sh b/files/startup.sh index 2879374..c58f055 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -83,22 +83,11 @@ if [[ -n $RANGER_AUDIT_DB_URL ]]; then fi fi -echo "HELLO NEW WORLD" -echo $ENABLE_METRICS if [ -n "$ENABLE_METRICS" ]; then - echo "INSIDE HELLO NEW WORLD" - - echo $ENABLE_METRICS - - echo "ECS_CONTAINER_METADATA_URI" - echo $ECS_CONTAINER_METADATA_URI - echo "ECS_CONTAINER_METADATA_URI_V4" - echo $ECS_CONTAINER_METADATA_URI_V4 update_property.py hive.metastore.metrics.enabled true /etc/hive/conf/hive-site.xml #configure to send metrics to cloudwatch when running on ECS if [ -n "$ECS_CONTAINER_METADATA_URI" ]; then - echo "INSIDE - ECS_CONTAINER_METADATA_URI" export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" From e32defb489435b286e49612532e761fbe217becd Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Wed, 31 Jan 2024 23:54:15 +0000 Subject: [PATCH 17/22] Removed echo --- files/startup.sh | 4 ---- 1 file changed, 4 deletions(-) diff --git a/files/startup.sh b/files/startup.sh index c58f055..521e921 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -189,10 +189,6 @@ export AUX_CLASSPATH="/usr/share/java/mariadb-connector-java.jar" [[ ! -z $HIVE_DB_WHITELIST ]] && export AUX_CLASSPATH="$AUX_CLASSPATH:/usr/lib/apiary/apiary-metastore-auth-${APIARY_METASTORE_AUTH_VERSION}.jar" [[ ! -z $ENABLE_METRICS ]] && export AUX_CLASSPATH="$AUX_CLASSPATH:/usr/lib/apiary/apiary-metastore-metrics-${APIARY_METASTORE_METRICS_VERSION}-all.jar" -echo $ENABLE_METRICS -echo $AUX_CLASSPATH -echo "HELLO WORLD" - #configure container credentials provider when running in ECS if [ ! -z ${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI} ]; then update_property.py fs.s3a.aws.credentials.provider com.amazonaws.auth.ContainerCredentialsProvider /etc/hadoop/conf/core-site.xml From b328a2718b9b4261e2d1b80ad7fa60710d15b585 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Wed, 31 Jan 2024 23:55:11 +0000 Subject: [PATCH 18/22] Removed echo --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4bc54ac..41eb17a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -15,4 +15,4 @@ jobs: with: dockerfile: "Dockerfile" always_pull: true - push: true + push: false From 5d35279d56a5cc4a3cfa9c64bb027183afebd393 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Wed, 31 Jan 2024 23:56:01 +0000 Subject: [PATCH 19/22] Removed echo --- files/startup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/files/startup.sh b/files/startup.sh index 521e921..2f959c4 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -91,7 +91,7 @@ if [ -n "$ENABLE_METRICS" ]; then export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" - export HADOOP_OPTS="$HADOOP_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9025 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml -Dcom.sun.management.jmxremote.ssl=false $HEAP_OPTS" + #export HADOOP_OPTS="$HADOOP_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9025 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml -Dcom.sun.management.jmxremote.ssl=false $HEAP_OPTS" export CLOUDWATCH_NAMESPACE="${INSTANCE_NAME}-metastore" export ECS_TASK_ID=$(wget -q -O - ${ECS_CONTAINER_METADATA_URI}/task|jq -r .TaskARN|awk -F/ '{ print $NF }') From e754cf310b9e5797478d8b856faeac355755e656 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Thu, 1 Feb 2024 00:13:38 +0000 Subject: [PATCH 20/22] Removed echo --- files/startup.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/files/startup.sh b/files/startup.sh index 2f959c4..fd55da0 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -91,8 +91,6 @@ if [ -n "$ENABLE_METRICS" ]; then export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" - #export HADOOP_OPTS="$HADOOP_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9025 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml -Dcom.sun.management.jmxremote.ssl=false $HEAP_OPTS" - export CLOUDWATCH_NAMESPACE="${INSTANCE_NAME}-metastore" export ECS_TASK_ID=$(wget -q -O - ${ECS_CONTAINER_METADATA_URI}/task|jq -r .TaskARN|awk -F/ '{ print $NF }') update_property.py hive.service.metrics.class com.expediagroup.apiary.extensions.metastore.metrics.CodahaleMetrics /etc/hive/conf/hive-site.xml From 53b7b8a86b891ea2e674800618afed8f80278a00 Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Thu, 1 Feb 2024 00:15:46 +0000 Subject: [PATCH 21/22] Removed echo --- CHANGELOG.md | 4 ++++ files/startup.sh | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e155624..062d0a4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). +## [3.0.17] - 2024-01-31 +### Added +-Enable prometheus jmx agent when running on ECS by exporting `EXPORTER_OPTS` + ## [3.0.16] - 2024-01-11 ### Added - Added snapshot.yaml for pushing docker image from feature branch. diff --git a/files/startup.sh b/files/startup.sh index fd55da0..e4e6a30 100755 --- a/files/startup.sh +++ b/files/startup.sh @@ -89,8 +89,8 @@ if [ -n "$ENABLE_METRICS" ]; then #configure to send metrics to cloudwatch when running on ECS if [ -n "$ECS_CONTAINER_METADATA_URI" ]; then + # enable prometheus jmx agent when running on ECS export EXPORTER_OPTS="-javaagent:/usr/lib/apiary/jmx_prometheus_javaagent-${EXPORTER_VERSION}.jar=8080:/etc/hive/conf/jmx-exporter.yaml" - export CLOUDWATCH_NAMESPACE="${INSTANCE_NAME}-metastore" export ECS_TASK_ID=$(wget -q -O - ${ECS_CONTAINER_METADATA_URI}/task|jq -r .TaskARN|awk -F/ '{ print $NF }') update_property.py hive.service.metrics.class com.expediagroup.apiary.extensions.metastore.metrics.CodahaleMetrics /etc/hive/conf/hive-site.xml From bab0c1d5fe514bc3ed585b38b7993a9b8fbd25ce Mon Sep 17 00:00:00 2001 From: Dhrubajyoti Sadhu Date: Thu, 1 Feb 2024 00:16:23 +0000 Subject: [PATCH 22/22] Removed echo --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 062d0a4..602f13c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) a ## [3.0.17] - 2024-01-31 ### Added --Enable prometheus jmx agent when running on ECS by exporting `EXPORTER_OPTS` +- Enable prometheus jmx agent when running on ECS by exporting `EXPORTER_OPTS` ## [3.0.16] - 2024-01-11 ### Added