44
55CONFIG_FILE=" /etc/oceanbase/seekdb.cnf"
66BASE_DIR=" /var/lib/oceanbase"
7- SEEKDB_TELEMETRY_FILE=" $BASE_DIR /run/telemetry.json"
8- CURRENT_DIR=$( dirname " $0 " )
9- report=3
7+ SYSTEMD_PID_FILE=" $BASE_DIR /run/observer.pid"
108
119# Check if config file exists
1210if [ ! -f " $CONFIG_FILE " ]; then
@@ -34,6 +32,9 @@ read_config() {
3432 " port" )
3533 ADDITIONAL_PARAMS=" $ADDITIONAL_PARAMS --port=$value "
3634 ;;
35+ " base-dir" )
36+ BASE_DIR=" $value "
37+ ;;
3738 " data-dir" )
3839 ADDITIONAL_PARAMS=" $ADDITIONAL_PARAMS --data-dir=$value "
3940 ;;
@@ -56,26 +57,27 @@ CMD="/usr/bin/observer --base-dir=$BASE_DIR $ADDITIONAL_PARAMS"
5657echo " Starting seekdb with command: $CMD "
5758echo " Configuration loaded from: $CONFIG_FILE "
5859
59- # Execute the command
60- $CMD &
61- CMD_PID= $!
62-
63- # Wait for the command to complete and check its exit status
64- wait $CMD_PID
60+ $CMD
6561CMD_EXIT_CODE= $?
6662
63+ # Create softlink for PID file to systemd expected location
64+ SEEKDB_PID_FILE= " $BASE_DIR /run/observer.pid"
65+ if [ -f " $SEEKDB_PID_FILE " ] && [ " $SEEKDB_PID_FILE " != " $SYSTEMD_PID_FILE " ]; then
66+ # Create target directory if it doesn't exist
67+ mkdir -p " $( dirname " $SYSTEMD_PID_FILE " ) "
68+ # Remove existing link or file if exists
69+ rm -f " $SYSTEMD_PID_FILE "
70+ # Create softlink
71+ ln -s " $SEEKDB_PID_FILE " " $SYSTEMD_PID_FILE "
72+ fi
73+
6774# Check if command executed successfully
6875if [ $CMD_EXIT_CODE -eq 0 ]; then
69- # Start obshell agent
76+ # Start obshell agent (ignore errors)
7077 echo " SeekDB started successfully, starting obshell agent..."
7178 if [ -f " /usr/bin/obshell" ]; then
7279 sleep 1
73- /usr/bin/obshell agent start --seekdb --base-dir=$BASE_DIR
74- if [ $? -eq 0 ]; then
75- echo " obshell agent started successfully"
76- else
77- echo " Failed to start obshell agent"
78- fi
80+ /usr/bin/obshell agent start --seekdb --base-dir=$BASE_DIR || true
7981 else
8082 echo " Warning: /usr/bin/obshell not found, skipping obshell agent start"
8183 fi
0 commit comments