From 9257575bebb57f9eb19759c0b91b593f11616ecf Mon Sep 17 00:00:00 2001 From: Marcos Alexandre de Melo Medeiros Date: Sun, 6 Aug 2017 22:19:43 -0300 Subject: [PATCH] alert mail configuration --- docker-compose.yml | 16 ++++++ pinpoint-collector/start-collector.sh | 8 +++ pinpoint-web/Dockerfile | 7 ++- pinpoint-web/mail.zip | Bin 0 -> 4213 bytes pinpoint-web/start-web.sh | 67 ++++++++++++++++++++++++++ 5 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 pinpoint-web/mail.zip diff --git a/docker-compose.yml b/docker-compose.yml index ebebd90..bb46547 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -67,19 +67,35 @@ services: restart: always expose: - "8080" + - "9997" ports: + - "9997:9997/tcp" - "28080:8080" environment: HBASE_HOST: pinpoint-hbase HBASE_PORT: 2181 CLUSTER_ENABLE: 'true' CLUSTER_ZOOKEEPER_ADDRESS: pinpoint-hbase + CLUSTER_WEB_TCP_PORT: 9997 + CONFIG_SENDUSAGE: 'false' ADMIN_PASSWORD: admin123 DISABLE_DEBUG: 'true' JDBC_DRIVER: com.mysql.jdbc.Driver JDBC_URL: jdbc:mysql://pinpoint-mysql:3306/pinpoint?characterEncoding=UTF-8 JDBC_USERNAME: admin JDBC_PASSWORD: admin + MAIL_ENABLE: 'true' + MAIL_HOST: stmp.test.com + MAIL_PORT: 123 + MAIL_USERNAME: user + MAIL_PASSWORD: pass + MAIL_PROPERTIES_MAIL_TRANSPORT_PROTOCOL: smtp + MAIL_PROPERTIES_MAIL_SMTP_AUTH: 'true' + MAIL_PROPERTIES_MAIL_SMTP_PORT: 587 + MAIL_PROPERTIES_MAIL_SMTP_FROM: test@example.com + MAIL_PROPERTIES_MAIL_STARTTLS_ENABLE: 'true' + MAIL_PROPERTIES_MAIL_STARTTLS_REQUIRED: 'true' + MAIL_PROPERTIES_MAIL_DEBUG: 'true' TZ: "America/Recife" volumes: diff --git a/pinpoint-collector/start-collector.sh b/pinpoint-collector/start-collector.sh index 05d40b2..e357776 100644 --- a/pinpoint-collector/start-collector.sh +++ b/pinpoint-collector/start-collector.sh @@ -4,6 +4,8 @@ set -x CLUSTER_ENABLE=${CLUSTER_ENABLE:-false} CLUSTER_ZOOKEEPER_ADDRESS=${CLUSTER_ZOOKEEPER_ADDRESS:-localhost} +CLUSTER_LISTEN_IP=${CLUSTER_LISTEN_IP:-} +CLUSTER_LISTEN_PORT=${CLUSTER_LISTEN_PORT:-} COLLECTOR_TCP_PORT=${COLLECTOR_TCP_PORT:-9994} COLLECTOR_UDP_STAT_LISTEN_PORT=${COLLECTOR_UDP_STAT_LISTEN_PORT:-9995} @@ -19,6 +21,12 @@ cp /assets/hbase.properties /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/hbase sed -i "s/cluster.enable=true/cluster.enable=${CLUSTER_ENABLE}/g" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties sed -i "s/cluster.zookeeper.address=localhost/cluster.zookeeper.address=${CLUSTER_ZOOKEEPER_ADDRESS}/g" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties +if [ "$CLUSTER_LISTEN_IP" != "" ]; then + sed -i "/cluster.listen.ip=/ s/=.*/=${CLUSTER_LISTEN_IP}/" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties +fi +if [ "$CLUSTER_LISTEN_PORT" != "" ]; then + sed -i "/cluster.listen.port=/ s/=.*/=${CLUSTER_LISTEN_PORT}/" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties +fi sed -i "s/collector.tcpListenPort=9994/collector.tcpListenPort=${COLLECTOR_TCP_PORT}/g" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties sed -i "s/collector.udpStatListenPort=9995/collector.udpStatListenPort=${COLLECTOR_UDP_STAT_LISTEN_PORT}/g" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties diff --git a/pinpoint-web/Dockerfile b/pinpoint-web/Dockerfile index 7a7e8e8..1709e07 100644 --- a/pinpoint-web/Dockerfile +++ b/pinpoint-web/Dockerfile @@ -7,16 +7,21 @@ FROM tomcat:8-jre8 ENV PINPOINT_VERSION=1.6.2 ADD start-web.sh /usr/local/bin/ +ADD mail.zip /assets/mail.zip RUN chmod a+x /usr/local/bin/start-web.sh \ && mkdir -p /assets/ \ && curl -SL https://raw.githubusercontent.com/naver/pinpoint/$PINPOINT_VERSION/web/src/main/resources/pinpoint-web.properties -o /assets/pinpoint-web.properties \ && curl -SL https://raw.githubusercontent.com/naver/pinpoint/$PINPOINT_VERSION/web/src/main/resources/hbase.properties -o /assets/hbase.properties \ && curl -SL https://github.com/naver/pinpoint/releases/download/$PINPOINT_VERSION/pinpoint-web-$PINPOINT_VERSION.war -o pinpoint-web.war \ + && curl -SL https://maven.java.net/content/repositories/releases/com/sun/mail/javax.mail/1.5.2/javax.mail-1.5.2.jar -o javax.mail-1.5.2.jar \ && rm -rf /usr/local/tomcat/webapps \ && mkdir -p /usr/local/tomcat/webapps \ && unzip pinpoint-web.war -d /usr/local/tomcat/webapps/ROOT \ - && rm -rf pinpoint-web.war + && rm -rf pinpoint-web.war \ + && mv javax.mail-1.5.2.jar /usr/local/tomcat/webapps/ROOT/WEB-INF/lib/ \ + && unzip /assets/mail.zip -d /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/ \ + && rm -rf /assets/mail.zip EXPOSE 8080 diff --git a/pinpoint-web/mail.zip b/pinpoint-web/mail.zip new file mode 100644 index 0000000000000000000000000000000000000000..4263a5b54f644ebb6aa876ca58f20de2790608de GIT binary patch literal 4213 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 literal 0 HcmV?d00001 diff --git a/pinpoint-web/start-web.sh b/pinpoint-web/start-web.sh index 4aedf1f..d8cb5fe 100644 --- a/pinpoint-web/start-web.sh +++ b/pinpoint-web/start-web.sh @@ -4,11 +4,16 @@ set -x CLUSTER_ENABLE=${CLUSTER_ENABLE:-false} CLUSTER_ZOOKEEPER_ADDRESS=${CLUSTER_ZOOKEEPER_ADDRESS:-localhost} +CLUSTER_WEB_TCP_PORT=${CLUSTER_WEB_TCP_PORT:-9997} +CLUSTER_CONNECT_ADDRESS=${CLUSTER_CONNECT_ADDRESS:-} + ADMIN_PASSWORD=${ADMIN_PASSWORD:-admin} HBASE_HOST=${HBASE_HOST:-localhost} HBASE_PORT=${HBASE_PORT:-2181} +CONFIG_SENDUSAGE=${CONFIG_SENDUSAGE:-true} + DISABLE_DEBUG=${DISABLE_DEBUG:-true} JDBC_DRIVER=${JDBC_DRIVER:-com.mysql.jdbc.Driver} @@ -23,19 +28,81 @@ jdbc.username=${JDBC_USERNAME} jdbc.password=${JDBC_PASSWORD} " > /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/jdbc.properties +MAIL_ENABLE=${MAIL_ENABLE:-false} +MAIL_HOST=${MAIL_HOST:-} +MAIL_PORT=${MAIL_PORT:-} +MAIL_USERNAME=${MAIL_USERNAME:-} +MAIL_PASSWORD=${MAIL_PASSWORD:-} +MAIL_PROPERTIES_MAIL_TRANSPORT_PROTOCOL=${MAIL_PROPERTIES_MAIL_TRANSPORT_PROTOCOL:-smtp} +MAIL_PROPERTIES_MAIL_SMTP_AUTH=${MAIL_PROPERTIES_MAIL_SMTP_AUTH:-true} +MAIL_PROPERTIES_MAIL_SMTP_PORT=${MAIL_PROPERTIES_MAIL_SMTP_AUTH:-} +MAIL_PROPERTIES_MAIL_SMTP_FROM=${MAIL_PROPERTIES_MAIL_SMTP_FROM:-} +MAIL_PROPERTIES_MAIL_STARTTLS_ENABLE=${MAIL_PROPERTIES_MAIL_STARTTLS_ENABLE:-true} +MAIL_PROPERTIES_MAIL_STARTTLS_REQUIRED=${MAIL_PROPERTIES_MAIL_STARTTLS_REQUIRED:-} +MAIL_PROPERTIES_MAIL_DEBUG=${MAIL_PROPERTIES_MAIL_DEBUG:-} + cp /assets/pinpoint-web.properties /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-web.properties cp /assets/hbase.properties /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/hbase.properties sed -i "s/cluster.enable=true/cluster.enable=${CLUSTER_ENABLE}/g" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-web.properties sed -i "s/cluster.zookeeper.address=localhost/cluster.zookeeper.address=${CLUSTER_ZOOKEEPER_ADDRESS}/g" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-web.properties +if [ "$CLUSTER_WEB_TCP_PORT" != "" ]; then + sed -i "/cluster.web.tcp.port=/ s/=.*/=${CLUSTER_WEB_TCP_PORT}/" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-web.properties +fi +if [ "$CLUSTER_CONNECT_ADDRESS" != "" ]; then + sed -i "/cluster.connect.address=/ s/=.*/=${CLUSTER_CONNECT_ADDRESS}/" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-web.properties +fi sed -i "s/admin.password=admin/admin.password=${ADMIN_PASSWORD}/g" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-web.properties sed -i "s/hbase.client.host=localhost/hbase.client.host=${HBASE_HOST}/g" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/hbase.properties sed -i "s/hbase.client.port=2181/hbase.client.port=${HBASE_PORT}/g" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/hbase.properties +if [ "$CONFIG_SENDUSAGE" != "" ]; then + sed -i "/config.sendUsage=/ s/=.*/=${CONFIG_SENDUSAGE}/" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-web.properties +fi + if [ "$DISABLE_DEBUG" == "true" ]; then sed -i 's/level value="DEBUG"/level value="INFO"/' /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/log4j.xml fi +if [ "$MAIL_ENABLE" == "true" ]; then + sed -i 's/<\/beans>/<\/beans>/' /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/applicationContext-web.xml + + if [ "$MAIL_HOST" != "" ]; then + sed -i "s/smtp.gmail.com/${MAIL_HOST}/" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/applicationContext-mail.xml + fi + if [ "$MAIL_PORT" != "" ]; then + sed -i "s/587/${MAIL_PORT}/" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/applicationContext-mail.xml + fi + if [ "$MAIL_USERNAME" != "" ]; then + sed -i "s/UserName/${MAIL_USERNAME}/" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/applicationContext-mail.xml + fi + if [ "$MAIL_PASSWORD" != "" ]; then + sed -i "s/PassWord/${MAIL_PASSWORD}/" /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/applicationContext-mail.xml + fi + if [ "$MAIL_PROPERTIES_MAIL_TRANSPORT_PROTOCOL" != "" ]; then + sed -i "/mail.transport.protocol/ s/<\!-- //; s/ -->//; s/>.*${MAIL_PROPERTIES_MAIL_TRANSPORT_PROTOCOL}//; s/>.*${MAIL_PROPERTIES_MAIL_SMTP_PORT}//; s/>.*${MAIL_PROPERTIES_MAIL_SMTP_AUTH}//; s/>.*${MAIL_PROPERTIES_MAIL_SMTP_FROM}//; s/>.*${MAIL_PROPERTIES_MAIL_STARTTLS_ENABLE}//; s/>.*${MAIL_PROPERTIES_MAIL_STARTTLS_REQUIRED}//; s/>.*${MAIL_PROPERTIES_MAIL_DEBUG}