Merge "Add info.sh"
diff --git a/files/swift/proxy-server.conf b/files/swift/proxy-server.conf
index 5752d74..da6b1fa 100644
--- a/files/swift/proxy-server.conf
+++ b/files/swift/proxy-server.conf
@@ -1,8 +1,11 @@
[DEFAULT]
bind_port = 8080
user = %USER%
-log_facility = LOG_LOCAL1
swift_dir = %SWIFT_CONFIG_LOCATION%
+workers = 1
+log_name = swift
+log_facility = LOG_LOCAL1
+log_level = DEBUG
[pipeline:main]
pipeline = healthcheck cache %AUTH_SERVER% proxy-server
diff --git a/files/swift/rsyslog.conf b/files/swift/rsyslog.conf
new file mode 100644
index 0000000..011c893
--- /dev/null
+++ b/files/swift/rsyslog.conf
@@ -0,0 +1,26 @@
+# Uncomment the following to have a log containing all logs together
+#local1,local2,local3,local4,local5.* %SWIFT_LOGDIR%/all.log
+
+# Uncomment the following to have hourly proxy logs for stats processing
+#$template HourlyProxyLog,"%SWIFT_LOGDIR%/hourly/%$YEAR%%$MONTH%%$DAY%%$HOUR%"
+#local1.*;local1.!notice ?HourlyProxyLog
+
+local1.*;local1.!notice %SWIFT_LOGDIR%/proxy.log
+local1.notice %SWIFT_LOGDIR%/proxy.error
+local1.* ~
+
+local2.*;local2.!notice %SWIFT_LOGDIR%/storage1.log
+local2.notice %SWIFT_LOGDIR%/storage1.error
+local2.* ~
+
+local3.*;local3.!notice %SWIFT_LOGDIR%/storage2.log
+local3.notice %SWIFT_LOGDIR%/storage2.error
+local3.* ~
+
+local4.*;local4.!notice %SWIFT_LOGDIR%/storage3.log
+local4.notice %SWIFT_LOGDIR%/storage3.error
+local4.* ~
+
+local5.*;local5.!notice %SWIFT_LOGDIR%/storage4.log
+local5.notice %SWIFT_LOGDIR%/storage4.error
+local5.* ~
diff --git a/stack.sh b/stack.sh
index 9f9bed9..420fc25 100755
--- a/stack.sh
+++ b/stack.sh
@@ -709,7 +709,7 @@
# Initialize the horizon database (it stores sessions and notices shown to
# users). The user system is external (keystone).
cd $HORIZON_DIR/openstack-dashboard
- dashboard/manage.py syncdb
+ python manage.py syncdb
# create an empty directory that apache uses as docroot
sudo mkdir -p $HORIZON_DIR/.blackhole
@@ -843,10 +843,10 @@
clean_iptables
# Destroy old instances
- instances=`virsh list | grep $INSTANCE_NAME_PREFIX | cut -d " " -f3`
+ instances=`virsh list --all | grep $INSTANCE_NAME_PREFIX | sed "s/.*\($INSTANCE_NAME_PREFIX[0-9a-fA-F]*\).*/\1/g"`
if [ ! $instances = "" ]; then
- echo $instances | xargs -n1 virsh destroy
- echo $instances | xargs -n1 virsh undefine
+ echo $instances | xargs -n1 virsh destroy || true
+ echo $instances | xargs -n1 virsh undefine || true
fi
# Clean out the instances directory.
@@ -868,9 +868,10 @@
USER_GROUP=$(id -g)
sudo mkdir -p ${SWIFT_DATA_LOCATION}/drives
- sudo chown -R $USER:${USER_GROUP} ${SWIFT_DATA_LOCATION}/drives
+ sudo chown -R $USER:${USER_GROUP} ${SWIFT_DATA_LOCATION}
# We then create a loopback disk and format it to XFS.
+ # TODO: Reset disks on new pass.
if [[ ! -e ${SWIFT_DATA_LOCATION}/drives/images/swift.img ]]; then
mkdir -p ${SWIFT_DATA_LOCATION}/drives/images
sudo touch ${SWIFT_DATA_LOCATION}/drives/images/swift.img
@@ -964,6 +965,17 @@
generate_swift_configuration container 6011 2
generate_swift_configuration account 6012 2
+
+ # We have some specific configuration for swift for rsyslog. See
+ # the file /etc/rsyslog.d/10-swift.conf for more info.
+ swift_log_dir=${SWIFT_DATA_LOCATION}/logs
+ rm -rf ${swift_log_dir}
+ mkdir -p ${swift_log_dir}/hourly
+ sudo chown -R syslog:adm ${swift_log_dir}
+ sed "s,%SWIFT_LOGDIR%,${swift_log_dir}," $FILES/swift/rsyslog.conf | sudo \
+ tee /etc/rsyslog.d/10-swift.conf
+ sudo restart rsyslog
+
# We create two helper scripts :
#
# - swift-remakerings
@@ -1162,11 +1174,9 @@
if [ "$SYSLOG" != "False" ]; then
sed -i -e '/^handlers=devel$/s/=devel/=production/' \
$KEYSTONE_DIR/etc/logging.cnf
- sed -i -e "
- /^log_file/s/log_file/\#log_file/; \
- /^log_config/d;/^\[DEFAULT\]/a\
- log_config=$KEYSTONE_DIR/etc/logging.cnf" \
+ sed -i -e "/^log_file/s/log_file/\#log_file/" \
$KEYSTONE_DIR/etc/keystone.conf
+ KEYSTONE_LOG_CONFIG="--log-config $KEYSTONE_DIR/etc/logging.cnf"
fi
fi
@@ -1219,7 +1229,7 @@
# launch the keystone and wait for it to answer before continuing
if [[ "$ENABLED_SERVICES" =~ "key" ]]; then
- screen_it key "cd $KEYSTONE_DIR && $KEYSTONE_DIR/bin/keystone --config-file $KEYSTONE_CONF -d"
+ screen_it key "cd $KEYSTONE_DIR && $KEYSTONE_DIR/bin/keystone --config-file $KEYSTONE_CONF $KEYSTONE_LOG_CONFIG -d"
echo "Waiting for keystone to start..."
if ! timeout $SERVICE_TIMEOUT sh -c "while ! wget -q -O- http://127.0.0.1:5000; do sleep 1; done"; then
echo "keystone did not start"