add script to generate print statistics
This commit is contained in:
parent
2c51f24184
commit
38f56589dc
1 changed files with 47 additions and 0 deletions
47
resources/generate_print_report.py
Executable file
47
resources/generate_print_report.py
Executable file
|
@ -0,0 +1,47 @@
|
|||
#! /usr/bin/python2
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import sys
|
||||
|
||||
prints_list = []
|
||||
|
||||
CUPSLOGFILE = "/var/log/cups/page_log"
|
||||
f = open(CUPSLOGFILE, 'r')
|
||||
for line in f.readlines():
|
||||
|
||||
#for line in sys.stdin:
|
||||
cols = line.split(' ')
|
||||
rawdatetime = cols[3][1:]
|
||||
copies = int(cols[5])
|
||||
job = cols[10]
|
||||
#print "rawdatetime", rawdatetime, "copies", copies, "job", job
|
||||
if copies == 1:
|
||||
prints_list.append((rawdatetime, copies, job))
|
||||
elif prints_list and prints_list[-1][2] == job:
|
||||
prints_list[-1] = (rawdatetime, copies, job)
|
||||
|
||||
MAX_COPIES = 6
|
||||
copies_statistics = {}
|
||||
for x in range(1, MAX_COPIES):
|
||||
copies_statistics[x] = 0
|
||||
|
||||
total = 0
|
||||
jobs = 0
|
||||
|
||||
for date, copies, job in prints_list:
|
||||
print date, copies, job
|
||||
copies_statistics[copies] += 1
|
||||
total += copies
|
||||
jobs += 1
|
||||
|
||||
word = "Abzug"
|
||||
|
||||
for x, copies in copies_statistics.iteritems():
|
||||
print str(copies).rjust(4), "x\t", x, word
|
||||
word = "Abzüge"
|
||||
|
||||
print "----------------------"
|
||||
print str(total).rjust(4), "\tAbzüge gesamt"
|
||||
print str(jobs).rjust(4), "\tJobs"
|
||||
|
||||
|
Loading…
Add table
Reference in a new issue