2021-02-16 11:02:57 +05:30
#!/bin/bash
set -o errexit
2021-06-03 20:54:41 +05:30
# Regular Colors
Black = '\033[0;30m' # Black
Red = '\[\e[0;31m\]' # Red
Green = '\033[0;32m' # Green
Yellow = '\033[0;33m' # Yellow
Blue = '\033[0;34m' # Blue
Purple = '\033[0;35m' # Purple
Cyan = '\033[0;36m' # Cyan
White = '\033[0;37m' # White
NC = '\033[0m' # No Color
2021-02-16 11:02:57 +05:30
is_command_present( ) {
type " $1 " >/dev/null 2>& 1
}
# Check whether 'wget' command exists.
has_wget( ) {
has_cmd wget
}
# Check whether 'curl' command exists.
has_curl( ) {
has_cmd curl
}
# Check whether the given command exists.
has_cmd( ) {
command -v " $1 " > /dev/null 2>& 1
}
is_mac( ) {
[ [ $OSTYPE = = darwin* ] ]
}
2022-06-28 17:33:50 +05:30
# is_arm64(){
# [[ `uname -m` == 'arm64' ]]
# }
2021-12-02 19:50:27 +05:30
2021-02-16 11:02:57 +05:30
check_os( ) {
if is_mac; then
package_manager = "brew"
desired_os = 1
os = "Mac"
return
fi
os_name = " $( cat /etc/*-release | awk -F= '$1 == "NAME" { gsub(/"/, ""); print $2; exit }' ) "
case " $os_name " in
Ubuntu*)
desired_os = 1
os = "ubuntu"
package_manager = "apt-get"
; ;
2021-04-01 21:41:25 +05:30
Amazon\ Linux*)
desired_os = 1
os = "amazon linux"
package_manager = "yum"
; ;
2021-02-16 11:02:57 +05:30
Debian*)
desired_os = 1
os = "debian"
package_manager = "apt-get"
; ;
Linux\ Mint*)
desired_os = 1
os = "linux mint"
package_manager = "apt-get"
; ;
Red\ Hat*)
desired_os = 1
os = "red hat"
package_manager = "yum"
; ;
CentOS*)
desired_os = 1
os = "centos"
package_manager = "yum"
; ;
SLES*)
desired_os = 1
os = "sles"
package_manager = "zypper"
; ;
openSUSE*)
desired_os = 1
os = "opensuse"
package_manager = "zypper"
; ;
*)
desired_os = 0
2021-04-01 21:41:25 +05:30
os = " Not Found: $os_name "
2021-02-16 11:02:57 +05:30
esac
}
2021-02-16 12:27:44 +05:30
# This function checks if the relevant ports required by SigNoz are available or not
2021-02-16 11:02:57 +05:30
# The script should error out in case they aren't available
check_ports_occupied( ) {
local port_check_output
2022-03-16 22:59:20 +05:30
local ports_pattern = "3301|4317"
2021-02-16 11:02:57 +05:30
if is_mac; then
port_check_output = " $( netstat -anp tcp | awk '$6 == "LISTEN" && $4 ~ /^.*\.(' " $ports_pattern " ')$/' ) "
elif is_command_present ss; then
# The `ss` command seems to be a better/faster version of `netstat`, but is not available on all Linux
# distributions by default. Other distributions have `ss` but no `netstat`. So, we try for `ss` first, then
# fallback to `netstat`.
port_check_output = " $( ss --all --numeric --tcp | awk '$1 == "LISTEN" && $4 ~ /^.*:(' " $ports_pattern " ')$/' ) "
elif is_command_present netstat; then
port_check_output = " $( netstat --all --numeric --tcp | awk '$6 == "LISTEN" && $4 ~ /^.*:(' " $ports_pattern " ')$/' ) "
fi
if [ [ -n $port_check_output ] ] ; then
2022-01-29 01:20:25 +05:30
send_event "port_not_available"
2021-02-16 11:02:57 +05:30
echo "+++++++++++ ERROR ++++++++++++++++++++++"
2022-03-16 22:59:20 +05:30
echo "SigNoz requires ports 3301 & 4317 to be open. Please shut down any other service(s) that may be running on these ports."
2021-02-16 12:27:44 +05:30
echo "You can run SigNoz on another port following this guide https://signoz.io/docs/deployment/docker#troubleshooting"
2021-02-16 11:02:57 +05:30
echo "++++++++++++++++++++++++++++++++++++++++"
echo ""
exit 1
fi
}
install_docker( ) {
echo "++++++++++++++++++++++++"
echo "Setting up docker repos"
2021-04-01 21:56:03 +05:30
2021-02-16 11:02:57 +05:30
if [ [ $package_manager = = apt-get ] ] ; then
2022-03-16 22:59:20 +05:30
apt_cmd = " $sudo_cmd apt-get --yes --quiet "
2021-02-16 11:02:57 +05:30
$apt_cmd update
$apt_cmd install software-properties-common gnupg-agent
2022-03-16 22:59:20 +05:30
curl -fsSL " https://download.docker.com/linux/ $os /gpg " | $sudo_cmd apt-key add -
$sudo_cmd add-apt-repository \
2021-02-16 11:02:57 +05:30
" deb [arch=amd64] https://download.docker.com/linux/ $os $( lsb_release -cs) stable "
$apt_cmd update
echo "Installing docker"
$apt_cmd install docker-ce docker-ce-cli containerd.io
elif [ [ $package_manager = = zypper ] ] ; then
2022-03-21 20:43:43 +05:30
zypper_cmd = " $sudo_cmd zypper --quiet --no-gpg-checks --non-interactive "
2021-02-16 11:02:57 +05:30
echo "Installing docker"
if [ [ $os = = sles ] ] ; then
os_sp = " $( cat /etc/*-release | awk -F= '$1 == "VERSION_ID" { gsub(/"/, ""); print $2; exit }' ) "
os_arch = " $( uname -i) "
2022-03-16 22:59:20 +05:30
SUSEConnect -p sle-module-containers/$os_sp /$os_arch -r ''
2021-02-16 11:02:57 +05:30
fi
$zypper_cmd install docker docker-runc containerd
2022-03-21 20:43:43 +05:30
$sudo_cmd systemctl enable docker.service
2021-04-01 21:56:03 +05:30
elif [ [ $package_manager = = yum && $os = = 'amazon linux' ] ] ; then
2021-04-01 22:04:39 +05:30
echo
echo "Amazon Linux detected ... "
echo
2022-03-16 22:59:20 +05:30
# yum install docker
# service docker start
2022-03-24 00:46:43 +05:30
$sudo_cmd yum install -y amazon-linux-extras
$sudo_cmd amazon-linux-extras enable docker
$sudo_cmd yum install -y docker
2021-02-16 11:02:57 +05:30
else
2021-04-01 22:12:50 +05:30
2022-03-21 20:43:43 +05:30
yum_cmd = " $sudo_cmd yum --assumeyes --quiet "
2021-02-16 11:02:57 +05:30
$yum_cmd install yum-utils
2022-03-21 20:43:43 +05:30
$sudo_cmd yum-config-manager --add-repo https://download.docker.com/linux/$os /docker-ce.repo
2021-02-16 11:02:57 +05:30
echo "Installing docker"
$yum_cmd install docker-ce docker-ce-cli containerd.io
fi
}
install_docker_compose( ) {
if [ [ $package_manager = = "apt-get" || $package_manager = = "zypper" || $package_manager = = "yum" ] ] ; then
if [ [ ! -f /usr/bin/docker-compose ] ] ; then
echo "++++++++++++++++++++++++"
echo "Installing docker-compose"
2022-03-21 20:43:43 +05:30
$sudo_cmd curl -L " https://github.com/docker/compose/releases/download/1.26.0/docker-compose- $( uname -s) - $( uname -m) " -o /usr/local/bin/docker-compose
$sudo_cmd chmod +x /usr/local/bin/docker-compose
$sudo_cmd ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
2021-02-16 11:02:57 +05:30
echo "docker-compose installed!"
echo ""
fi
else
2022-01-29 01:20:25 +05:30
send_event "docker_compose_not_found"
2021-02-16 11:02:57 +05:30
echo "+++++++++++ IMPORTANT READ ++++++++++++++++++++++"
echo "docker-compose not found! Please install docker-compose first and then continue with this installation."
echo "Refer https://docs.docker.com/compose/install/ for installing docker-compose."
echo "+++++++++++++++++++++++++++++++++++++++++++++++++"
exit 1
fi
}
start_docker( ) {
2022-03-16 22:59:20 +05:30
echo -e "🐳 Starting Docker ...\n"
2022-03-24 00:46:43 +05:30
if [ [ $os = = "Mac" ] ] ; then
2021-02-16 11:02:57 +05:30
open --background -a Docker && while ! docker system info > /dev/null 2>& 1; do sleep 1; done
else
2022-03-21 20:43:43 +05:30
if ! $sudo_cmd systemctl is-active docker.service > /dev/null; then
2021-02-16 11:02:57 +05:30
echo "Starting docker service"
2022-03-21 20:43:43 +05:30
$sudo_cmd systemctl start docker.service
2022-03-16 22:59:20 +05:30
fi
2022-07-20 23:30:21 +05:30
# if [[ -z $sudo_cmd ]]; then
# docker ps > /dev/null && true
# if [[ $? -ne 0 ]]; then
# request_sudo
# fi
# fi
2022-03-24 00:46:43 +05:30
if [ [ -z $sudo_cmd ] ] ; then
2022-07-20 23:30:21 +05:30
if ! docker ps > /dev/null && true; then
2022-03-16 22:59:20 +05:30
request_sudo
fi
2021-02-16 11:02:57 +05:30
fi
fi
}
2022-03-16 22:59:20 +05:30
2021-02-16 11:02:57 +05:30
wait_for_containers_start( ) {
local timeout = $1
# The while loop is important because for-loops don't work for dynamic values
while [ [ $timeout -gt 0 ] ] ; do
2022-02-08 22:47:06 +05:30
status_code = " $( curl -s -o /dev/null -w "%{http_code}" http://localhost:3301/api/v1/services/list || true ) "
2021-02-16 11:02:57 +05:30
if [ [ status_code -eq 200 ] ] ; then
break
else
2021-06-03 20:54:41 +05:30
echo -ne " Waiting for all containers to start. This check will timeout in $timeout seconds ...\r\c "
2021-02-16 11:02:57 +05:30
fi
( ( timeout--) )
sleep 1
done
echo ""
}
bye( ) { # Prints a friendly good bye message and exits the script.
2022-03-24 00:46:43 +05:30
if [ [ " $? " -ne 0 ] ] ; then
2021-02-16 11:02:57 +05:30
set +o errexit
2021-02-17 01:19:51 +05:30
2021-06-03 20:54:41 +05:30
echo "🔴 The containers didn't seem to start correctly. Please run the following command to check containers that may have errored out:"
2021-02-17 01:19:51 +05:30
echo ""
2022-06-28 17:33:50 +05:30
echo -e " $sudo_cmd docker-compose -f ./docker/clickhouse-setup/docker-compose.yaml ps -a "
2022-03-16 22:59:20 +05:30
2021-02-17 01:19:51 +05:30
# echo "Please read our troubleshooting guide https://signoz.io/docs/deployment/docker#troubleshooting"
2022-01-29 01:20:25 +05:30
echo "or reach us for support in #help channel in our Slack Community https://signoz.io/slack"
2021-02-17 01:19:51 +05:30
echo "++++++++++++++++++++++++++++++++++++++++"
2022-04-06 01:37:07 +05:30
if [ [ $email = = "" ] ] ; then
2022-03-16 22:59:20 +05:30
echo -e "\n📨 Please share your email to receive support with the installation"
2021-02-18 01:03:50 +05:30
read -rp 'Email: ' email
2022-03-16 22:59:20 +05:30
while [ [ $email = = "" ] ]
do
read -rp 'Email: ' email
done
fi
2021-02-18 01:03:50 +05:30
2022-01-29 01:20:25 +05:30
send_event "installation_support"
2021-02-16 11:02:57 +05:30
echo ""
echo -e "\nWe will reach out to you at the email provided shortly, Exiting for now. Bye! 👋 \n"
exit 0
fi
}
2022-03-16 22:59:20 +05:30
request_sudo( ) {
if hash sudo 2>/dev/null; then
echo -e "\n\n🙇 We will need sudo access to complete the installation."
2022-03-24 00:46:43 +05:30
if ( ( $EUID != 0 ) ) ; then
sudo_cmd = "sudo"
echo -e "Please enter your sudo password, if prompt."
2022-07-20 23:30:21 +05:30
# $sudo_cmd -l | grep -e "NOPASSWD: ALL" > /dev/null
# if [[ $? -ne 0 ]] && ! $sudo_cmd -v; then
# echo "Need sudo privileges to proceed with the installation."
# exit 1;
# fi
if ! $sudo_cmd -l | grep -e "NOPASSWD: ALL" > /dev/null && ! $sudo_cmd -v; then
2022-03-16 22:59:20 +05:30
echo "Need sudo privileges to proceed with the installation."
exit 1;
fi
2021-02-16 11:02:57 +05:30
2022-03-24 00:46:43 +05:30
echo -e "Got it! Thanks!! 🙏\n"
2022-03-16 22:59:20 +05:30
echo -e "Okay! We will bring up the SigNoz cluster from here 🚀\n"
fi
fi
}
echo ""
2021-02-16 11:02:57 +05:30
echo -e "👋 Thank you for trying out SigNoz! "
echo ""
2022-03-16 22:59:20 +05:30
sudo_cmd = ""
# Check sudo permissions
if ( ( $EUID != 0 ) ) ; then
echo "🟡 Running installer with non-sudo permissions."
echo " In case of any failure or prompt, please consider running the script with sudo privileges."
echo ""
else
sudo_cmd = "sudo"
fi
2021-02-16 11:02:57 +05:30
# Checking OS and assigning package manager
desired_os = 0
os = ""
2022-01-29 01:20:25 +05:30
email = ""
2022-03-16 22:59:20 +05:30
echo -e "🌏 Detecting your OS ...\n"
2021-02-16 11:02:57 +05:30
check_os
2022-01-29 01:20:25 +05:30
# Obtain unique installation id
2022-07-20 23:30:21 +05:30
# sysinfo="$(uname -a)"
# if [[ $? -ne 0 ]]; then
# uuid="$(uuidgen)"
# uuid="${uuid:-$(cat /proc/sys/kernel/random/uuid)}"
# sysinfo="${uuid:-$(cat /proc/sys/kernel/random/uuid)}"
# fi
if ! sysinfo = " $( uname -a) " ; then
2022-01-29 01:20:25 +05:30
uuid = " $( uuidgen) "
uuid = " ${ uuid :- $( cat /proc/sys/kernel/random/uuid) } "
2022-03-16 22:59:20 +05:30
sysinfo = " ${ uuid :- $( cat /proc/sys/kernel/random/uuid) } "
fi
digest_cmd = ""
if hash shasum 2>/dev/null; then
digest_cmd = "shasum -a 256"
elif hash sha256sum 2>/dev/null; then
digest_cmd = "sha256sum"
elif hash openssl 2>/dev/null; then
digest_cmd = "openssl dgst -sha256"
fi
2022-03-24 00:46:43 +05:30
if [ [ -z $digest_cmd ] ] ; then
2022-03-16 22:59:20 +05:30
SIGNOZ_INSTALLATION_ID = " $sysinfo "
2022-01-29 01:20:25 +05:30
else
2022-03-16 22:59:20 +05:30
SIGNOZ_INSTALLATION_ID = $( echo " $sysinfo " | $digest_cmd | grep -E -o '[a-zA-Z0-9]{64}' )
2022-01-29 01:20:25 +05:30
fi
2021-02-16 11:02:57 +05:30
2021-11-22 01:09:49 +05:30
# echo ""
2021-06-03 20:54:41 +05:30
2021-11-22 01:09:49 +05:30
# echo -e "👉 ${RED}Two ways to go forward\n"
# echo -e "${RED}1) ClickHouse as database (default)\n"
# read -p "⚙️ Enter your preference (1/2):" choice_setup
# while [[ $choice_setup != "1" && $choice_setup != "2" && $choice_setup != "" ]]
# do
# # echo $choice_setup
# echo -e "\n❌ ${CYAN}Please enter either 1 or 2"
# read -p "⚙️ Enter your preference (1/2): " choice_setup
# # echo $choice_setup
# done
# if [[ $choice_setup == "1" || $choice_setup == "" ]];then
# setup_type='clickhouse'
# fi
setup_type = 'clickhouse'
2021-06-03 20:54:41 +05:30
2021-11-22 01:09:49 +05:30
# echo -e "\n✅ ${CYAN}You have chosen: ${setup_type} setup\n"
2021-06-03 20:54:41 +05:30
2021-02-16 11:02:57 +05:30
# Run bye if failure happens
trap bye EXIT
2022-01-29 01:20:25 +05:30
URL = "https://api.segment.io/v1/track"
HEADER_1 = "Content-Type: application/json"
HEADER_2 = "Authorization: Basic NEdtb2E0aXhKQVVIeDJCcEp4c2p3QTFiRWZud0VlUno6"
2021-02-16 11:02:57 +05:30
2022-01-29 01:20:25 +05:30
send_event( ) {
error = ""
2021-02-16 12:23:32 +05:30
2022-01-29 01:20:25 +05:30
case " $1 " in
'install_started' )
event = "Installation Started"
; ;
'os_not_supported' )
event = "Installation Error"
error = "OS Not Supported"
; ;
'docker_not_installed' )
event = "Installation Error"
error = "Docker not installed"
; ;
'docker_compose_not_found' )
event = "Installation Error"
event = "Docker Compose not found"
; ;
'port_not_available' )
event = "Installation Error"
error = "port not available"
; ;
'installation_error_checks' )
event = "Installation Error - Checks"
error = "Containers not started"
2022-03-16 22:59:20 +05:30
others = '"data": "some_checks",'
2022-01-29 01:20:25 +05:30
; ;
'installation_support' )
event = "Installation Support"
others = '"email": "' " $email " '",'
; ;
'installation_success' )
event = "Installation Success"
; ;
'identify_successful_installation' )
event = "Identify Successful Installation"
others = '"email": "' " $email " '",'
; ;
*)
print_error " unknown event type: $1 "
exit 1
; ;
esac
2021-02-16 12:23:32 +05:30
2022-03-24 00:46:43 +05:30
if [ [ " $error " != "" ] ] ; then
2022-01-29 01:20:25 +05:30
error = '"error": "' " $error " '", '
fi
2021-02-16 12:23:32 +05:30
2022-01-29 01:20:25 +05:30
DATA = '{ "anonymousId": "' " $SIGNOZ_INSTALLATION_ID " '", "event": "' " $event " '", "properties": { "os": "' " $os " '", ' " $error $others " ' "setup_type": "' " $setup_type " '" } }'
2021-02-16 11:02:57 +05:30
if has_curl; then
2022-01-29 01:20:25 +05:30
curl -sfL -d " $DATA " --header " $HEADER_1 " --header " $HEADER_2 " " $URL " > /dev/null 2>& 1
2021-02-16 11:02:57 +05:30
elif has_wget; then
2022-01-29 01:20:25 +05:30
wget -q --post-data= " $DATA " --header " $HEADER_1 " --header " $HEADER_2 " " $URL " > /dev/null 2>& 1
2021-02-16 11:02:57 +05:30
fi
2022-01-29 01:20:25 +05:30
}
2021-02-16 11:02:57 +05:30
2022-01-29 01:20:25 +05:30
send_event "install_started"
if [ [ $desired_os -eq 0 ] ] ; then
send_event "os_not_supported"
2021-02-16 11:02:57 +05:30
fi
2021-02-16 12:23:32 +05:30
# check_ports_occupied
2021-02-16 11:02:57 +05:30
# Check is Docker daemon is installed and available. If not, the install & start Docker for Linux machines. We cannot automatically install Docker Desktop on Mac OS
if ! is_command_present docker; then
2022-03-16 22:59:20 +05:30
2021-02-16 11:02:57 +05:30
if [ [ $package_manager = = "apt-get" || $package_manager = = "zypper" || $package_manager = = "yum" ] ] ; then
2022-03-16 22:59:20 +05:30
request_sudo
2021-02-16 11:02:57 +05:30
install_docker
2022-03-16 22:59:20 +05:30
# enable docker without sudo from next reboot
sudo usermod -aG docker " ${ USER } "
elif is_mac; then
2021-02-16 11:02:57 +05:30
echo ""
echo "+++++++++++ IMPORTANT READ ++++++++++++++++++++++"
echo "Docker Desktop must be installed manually on Mac OS to proceed. Docker can only be installed automatically on Ubuntu / openSUSE / SLES / Redhat / Cent OS"
echo "https://docs.docker.com/docker-for-mac/install/"
echo "++++++++++++++++++++++++++++++++++++++++++++++++"
2022-01-29 01:20:25 +05:30
2022-03-16 22:59:20 +05:30
send_event "docker_not_installed"
exit 1
else
echo ""
echo "+++++++++++ IMPORTANT READ ++++++++++++++++++++++"
echo "Docker must be installed manually on your machine to proceed. Docker can only be installed automatically on Ubuntu / openSUSE / SLES / Redhat / Cent OS"
echo "https://docs.docker.com/get-docker/"
echo "++++++++++++++++++++++++++++++++++++++++++++++++"
2022-01-29 01:20:25 +05:30
send_event "docker_not_installed"
2021-02-16 11:02:57 +05:30
exit 1
fi
fi
# Install docker-compose
if ! is_command_present docker-compose; then
2022-03-16 22:59:20 +05:30
request_sudo
2021-02-16 11:02:57 +05:30
install_docker_compose
fi
start_docker
2022-03-16 22:59:20 +05:30
# $sudo_cmd docker-compose -f ./docker/clickhouse-setup/docker-compose.yaml up -d --remove-orphans || true
2021-06-03 20:54:41 +05:30
2021-02-16 11:02:57 +05:30
echo ""
2022-03-16 22:59:20 +05:30
echo -e "\n🟡 Pulling the latest container images for SigNoz.\n"
2022-06-28 17:33:50 +05:30
$sudo_cmd docker-compose -f ./docker/clickhouse-setup/docker-compose.yaml pull
2021-06-03 20:54:41 +05:30
2021-02-16 11:02:57 +05:30
echo ""
2021-06-03 20:54:41 +05:30
echo "🟡 Starting the SigNoz containers. It may take a few minutes ..."
2021-04-01 22:04:39 +05:30
echo
2021-02-16 11:02:57 +05:30
# The docker-compose command does some nasty stuff for the `--detach` functionality. So we add a `|| true` so that the
# script doesn't exit because this command looks like it failed to do it's thing.
2022-06-28 17:33:50 +05:30
$sudo_cmd docker-compose -f ./docker/clickhouse-setup/docker-compose.yaml up --detach --remove-orphans || true
2021-02-16 11:02:57 +05:30
wait_for_containers_start 60
echo ""
if [ [ $status_code -ne 200 ] ] ; then
echo "+++++++++++ ERROR ++++++++++++++++++++++"
2021-06-03 20:54:41 +05:30
echo "🔴 The containers didn't seem to start correctly. Please run the following command to check containers that may have errored out:"
2021-02-16 12:23:32 +05:30
echo ""
2022-03-16 22:59:20 +05:30
echo -e " $sudo_cmd docker-compose -f ./docker/clickhouse-setup/docker-compose.yaml ps -a "
2021-05-28 20:51:11 +05:30
echo "Please read our troubleshooting guide https://signoz.io/docs/deployment/docker/#troubleshooting-of-common-issues"
2022-01-29 01:20:25 +05:30
echo "or reach us on SigNoz for support https://signoz.io/slack"
2021-02-16 12:23:32 +05:30
echo "++++++++++++++++++++++++++++++++++++++++"
2022-01-29 01:20:25 +05:30
send_event "installation_error_checks"
2021-02-16 12:23:32 +05:30
exit 1
2021-02-16 11:02:57 +05:30
else
2022-01-29 01:20:25 +05:30
send_event "installation_success"
2021-02-16 12:23:32 +05:30
2021-02-16 11:02:57 +05:30
echo "++++++++++++++++++ SUCCESS ++++++++++++++++++++++"
2021-05-29 13:13:39 +05:30
echo ""
2021-06-03 20:54:41 +05:30
echo "🟢 Your installation is complete!"
2021-02-16 11:02:57 +05:30
echo ""
2022-02-08 22:47:06 +05:30
echo -e "🟢 Your frontend is running on http://localhost:3301"
2021-05-29 13:13:39 +05:30
echo ""
2023-01-27 12:53:23 +05:30
echo "ℹ ️ By default, retention period is set to 7 days for logs and traces, and 30 days for metrics."
echo -e "To change this, navigate to the General tab on the Settings page of SigNoz UI. For more details, refer to https://signoz.io/docs/userguide/retention-period \n"
2021-06-03 20:54:41 +05:30
2022-06-28 17:33:50 +05:30
echo " ℹ ️ To bring down SigNoz and clean volumes : $sudo_cmd docker-compose -f ./docker/clickhouse-setup/docker-compose.yaml down -v "
2021-06-03 20:54:41 +05:30
2021-02-16 12:23:32 +05:30
echo ""
echo "+++++++++++++++++++++++++++++++++++++++++++++++++"
echo ""
2023-01-27 12:53:23 +05:30
echo "👉 Need help in Getting Started?"
2022-01-29 01:20:25 +05:30
echo -e "Join us on Slack https://signoz.io/slack"
2021-02-16 12:23:32 +05:30
echo ""
2021-06-03 20:54:41 +05:30
echo -e "\n📨 Please share your email to receive support & updates about SigNoz!"
2021-02-16 12:23:32 +05:30
read -rp 'Email: ' email
2021-02-18 01:03:50 +05:30
while [ [ $email = = "" ] ]
do
read -rp 'Email: ' email
done
2022-01-29 01:20:25 +05:30
send_event "identify_successful_installation"
2021-02-16 11:02:57 +05:30
fi
2021-09-16 20:57:32 +05:30
echo -e "\n🙏 Thank you!\n"