-
Notifications
You must be signed in to change notification settings - Fork 3.1k
/
Copy pathstart-zipkin
executable file
·35 lines (28 loc) · 1.24 KB
/
start-zipkin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/bin/sh
#
# Copyright The OpenZipkin Authors
# SPDX-License-Identifier: Apache-2.0
#
# ENTRYPOINT script that starts Zipkin
set -eu
STORAGE_TYPE=${STORAGE_TYPE:-mem}
# Configure the Docker HEALTHCHECK
export HEALTHCHECK_PORT=${QUERY_PORT:-9411}
if [ "${STORAGE_TYPE}" = "mem" ]; then
# When using in-memory provider, allocate 160m, most of which for trace storage
JAVA_OPTS=${JAVA_OPTS:-"-Xms160m -Xmx160m -XX:+ExitOnOutOfMemoryError"}
fi
# MODULE_OPTS is not set in the zipkin-slim dist, so use it to detect if this is a slim build
if [ -z "${MODULE_OPTS+x}" ]; then
# Allocate less memory when using the slim build
JAVA_OPTS=${JAVA_OPTS:-"-Xms64m -Xmx64m -XX:+ExitOnOutOfMemoryError"}
# Use main class directly if there are no modules, as it measured 14% faster from JVM running to
# available verses PropertiesLauncher when using Zipkin was based on Spring Boot 2.1
exec java ${JAVA_OPTS} -cp '.:BOOT-INF/lib/*:BOOT-INF/classes' zipkin.server.ZipkinServer "$@"
else
JAVA_OPTS=${JAVA_OPTS:-"-Xms96m -Xmx96m -XX:+ExitOnOutOfMemoryError"}
# Disable Log4j2 JMX extensions when running the full build
exec java ${MODULE_OPTS} ${JAVA_OPTS} -cp . \
-Dlog4j2.disable.jmx=true \
org.springframework.boot.loader.launch.PropertiesLauncher "$@"
fi