]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/web/templates/default/logrotate.web.erb
Fix log rotation on web servers
[chef.git] / cookbooks / web / templates / default / logrotate.web.erb
index 83a6758286b33a72f8f1244093cdaa5fcebcd65f..03c3cb08a72b855f10624c963bb14fc19d5b7d0f 100644 (file)
@@ -3,21 +3,26 @@
 <%= node[:web][:log_directory] %>/*.log {
   daily
   missingok
-  rotate 7 
+  rotate 7
   compress
   delaycompress
   notifempty
+  su rails rails
   create 0660 rails rails
   sharedscripts
   postrotate
-<% if File.directory?("#{node[:web][:base_directory]}/rails") -%>
-    /bin/touch <%= node[:web][:base_directory] %>/rails/tmp/restart.txt
+<% if node[:recipes].include?("web::rails") -%>
+    /bin/sleep 30
+    PASSENGER_INSTANCE_REGISTRY_DIR=<%= node[:passenger][:instance_registry_dir] %> /usr/bin/passenger-config restart-app --ignore-app-not-running --name rails > /dev/null
 <% end -%>
-<% if File.directory?("#{node[:web][:base_directory]}/gpx-import") -%>
-    /usr/bin/service gpx-import rotated
+<% if node[:recipes].include?("web::frontend") -%>
+    /bin/systemctl try-reload-or-restart rails-jobs@mailers
+    /bin/systemctl try-reload-or-restart rails-jobs@storage
+    /bin/systemctl try-reload-or-restart rails-jobs@traces
 <% end -%>
-<% if File.directory?("#{node[:web][:base_directory]}/cgimap") -%>
-    /usr/bin/service cgimap reload
+<% if node[:recipes].include?("web::cgimap") -%>
+    /bin/systemctl reload cgimap
+    /usr/bin/rsync --preallocate <%= node[:web][:log_directory] %>/cgimap.log.2.gz ironbelly::logs/www.openstreetmap.org/cgimap-<%= node[:hostname] %>-`date -d "-2 days" +%Y-%m-%d`.gz
 <% end -%>
   endscript
 }