/
namie_crawler.sh
executable file
·65 lines (52 loc) · 1.43 KB
/
namie_crawler.sh
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#!/bin/sh
PG_NAME=`basename $0 '.sh'`
PG_HOME=$( cd $(dirname $0)/../ ; pwd -P )
LIB_HOME="${PG_HOME}/lib"
CRAWLER_JAR=`ls -1 ${LIB_HOME}/namie-crawler-*.jar`
LOG_MAX_SIZE=10000000
CONF_FILE=${PG_HOME}/${PG_NAME}.conf
# Crowler JAR filename is defined as a head to detect logback configuration file that contained.
NAM_JARS="${CRAWLER_JAR}:"
for i in $(ls -1 ${LIB_HOME}/*.jar); do NAM_JARS="${NAM_JARS}${i}:"; done
if [ $# -ne 1 ]; then
echo "RSSまたはRadiation引数が必要です。"
exit 1
fi
CMD=$1
if [ -r "$CONF_FILE" ]; then
. $CONF_FILE
fi
if [ -z "$TMP_DIR" ]; then
TMP_DIR=/var/log/namie-crawler
fi
if [ -z "$BOOTSTRAP_CLASS" ]; then
BOOTSTRAP_CLASS=jp.fukushima.namie.town.NamieCrawler
fi
if [ -z "$DMP_DIR" ]; then
DMP_DIR=${TMP_DIR}
fi
if [ -z "$DMP_FILE" ]; then
DMP_FILE=${DMP_DIR}/${PG_NAME}.log
fi
#---------------------------------
# check duplicate execute
#---------------------------------
LOCK_FILE=$TMP_DIR/.${PG_NAME}.lock
echo $LOCK_FILE
if [ -f $LOCK_FILE ]; then
echo "$PG_NAME is already executed."
exit 1
fi
echo $$ > $LOCK_FILE
trap 'rm -r $LOCK_FILE' 0 1 2 3 10 15
#---------------------------------
# run
#---------------------------------
java -cp $NAM_JARS ${BOOTSTRAP_CLASS} $CMD >> $DMP_FILE 2>&1
#---------------------------------
# rotate log
#---------------------------------
if [ `wc -c < $DMP_FILE` -gt $LOG_MAX_SIZE ]; then
mv $DMP_FILE $DMP_FILE.0
touch $DMP_FILE
fi