view host/admin/src/private/tools/clean_logs.luan @ 1995:301a6561fb6b

add host/admin
author Franklin Schmidt <fschmidt@gmail.com>
date Fri, 04 Jul 2025 10:25:38 -0600
parents
children
line wrap: on
line source

local Luan = require "luan:Luan.luan"
local error = Luan.error
local ipairs = Luan.ipairs or error()
local String = require "luan:String.luan"
local regex = String.regex or error()
local Io = require "luan:Io.luan"
local Http = require "luan:http/Http.luan"
local Utils = require "site:/private/lib/Utils.luan"


local web_log_regex = regex[[^web.*\.log$]]

return function()
	Http.response.headers["content-type"] = "text/plain"
	Io.stdout = Http.response.text_writer()
	local dirs = Utils.sites_dir.children()
	for _, site_dir in ipairs(dirs) do
		local log_dir = site_dir.child("site/private/local/logs")
		if log_dir.exists() then
			log_dir.child("luan.log").delete()
			for _, f in ipairs(log_dir.children()) do
				if web_log_regex.matches(f.name()) then
					f.delete()
				end_if
			end_for
		end_if
	end_for
%>
done
<%
end_function