File: spooler_handler.py

package info (click to toggle)
uwsgi 2.0.29-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 6,684 kB
  • sloc: ansic: 87,027; python: 7,001; cpp: 1,131; java: 708; perl: 678; sh: 585; ruby: 555; makefile: 148; xml: 130; cs: 121; objc: 37; php: 28; erlang: 20; javascript: 11
file content (34 lines) | stat: -rw-r--r-- 651 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#! /usr/bin/env python2
# coding = utf-8

from __future__ import print_function
from constants import tasks, LOGFILE
from os import remove
import uwsgi

counter = 0


def spoolerHandler(env):
    global counter
    # Spooler is handling a task
    with open(LOGFILE, "a") as log:
        print("%s" % (env['name']), file=log)

    counter += 1

    if counter == len(tasks):
        # Each task has been processed.
        uwsgi.signal(17)

    # Spooler has done handling the task
    return uwsgi.SPOOL_OK

uwsgi.spooler = spoolerHandler

# Clear the logfile
try:
    remove(LOGFILE)
except OSError, e:  # log does not exist
    pass
    # print(e)