scripts/munin/wiki_pages
Vincent Le Gallic c039058708 Enregistrement des droits d'exécution. Aucune vraie modif.
Darcs n'enregistrait pas les permissions des fichiers.
2013-01-31 05:36:25 +01:00

50 lines
1.3 KiB
Python
Executable file

#!/usr/bin/env python
# -*- coding: utf-8 -*-
FICHIER_MUNIN = '/var/lib/munin/tmp/wiki_pages'
import shutil
import sys
import tempfile
try :
arg = sys.argv[1]
except :
arg = ''
if arg == "config" :
print 'host_name web.wiki'
print 'graph_category wiki'
print 'graph_title Nombres de pages'
print 'graph_args --base 1000 --lower-limit 0'
print 'graph_vlabel nombre de pages'
print 'total.label Total'
print 'total.draw AREA'
print 'orphelines.label Pages orphelines'
print 'orphelines.draw AREA'
elif arg == "fichier" :
from MoinMoin.request.request_cli import Request
sys.path.insert(0, '/etc/moin')
request = Request(u"wiki.crans.org/")
request.form = request.args = request.setup_args()
pages = request.rootpage.getPageDict(user='')
orphaned = {}
orphaned.update(pages)
for page in pages.values():
links = page.getPageLinks(request)
for link in links:
if link in orphaned:
del orphaned[link]
tmpfile = tempfile.NamedTemporaryFile()
tmpfile.write("total.value %d\n" % pages.__len__())
tmpfile.write("orphelines.value %d\n" % orphaned.__len__())
tmpfile.flush()
shutil.copy(tmpfile.name, FICHIER_MUNIN)
tmpfile.close()
else:
sys.stdout.write(open(FICHIER_MUNIN).read())