Configure swift logging.
Split logs by storage node proxy and don't fill up the
/var/log/messages.
Set proxy-server in debug.
Only one worker by proxy-server since we are usually in debugging mode.
Change-Id: If39f35b98ad821e8a62e36e4c22e723f83e01db8
diff --git a/files/swift/proxy-server.conf b/files/swift/proxy-server.conf
index 2db6d32..1c567c3 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 cdba542..bc7af65 100755
--- a/stack.sh
+++ b/stack.sh
@@ -757,9 +757,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
@@ -853,6 +854,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