Changeset - 3f9fff4c9811
[Not reviewed]
default
0 3 0
Laman - 7 years ago 2017-10-10 17:02:35

fixed long running server, fixed logging
3 files changed with 20 insertions and 10 deletions:
0 comments (0 inline, 0 general)
src/config.py
Show inline comments
 
@@ -3,11 +3,13 @@ import logging as log
 
from logging.handlers import TimedRotatingFileHandler
 

	
 

	
 
log.basicConfig(
 
	level=log.INFO,format="%(asctime)s %(levelname)s: %(message)s",datefmt="%Y-%m-%d %H:%M:%S"
 
)
 
logger=log.getLogger()
 
logger.addHandler(TimedRotatingFileHandler("/var/log/morevna.log",when="midnight",backupCount=9))
 
logger.setLevel(log.INFO)
 
formatter=log.Formatter("%(asctime)s %(levelname)s: %(message)s",datefmt="%Y-%m-%d %H:%M:%S")
 
handler=TimedRotatingFileHandler("/var/log/morevna/mor.log",when="midnight",backupCount=9)
 
handler.setFormatter(formatter)
 
logger.addHandler(handler)
 

	
 

	
 
version=0
 

	
src/morevna.py
Show inline comments
 
import sys
 
import os.path
 
import logging as log
 
from argparse import ArgumentParser
 

	
 
from util import spawnDaemon
 
@@ -41,7 +42,10 @@ def serve(args):
 
	if args.port: conf.port=args.port
 

	
 
	s=Server(args.datafile,args.tree)
 
	spawnDaemon(s.serve)
 
	try:
 
		spawnDaemon(s.serve)
 
	except Exception as e:
 
		log.exception("exception: %s",e)
 

	
 

	
 
parser=ArgumentParser()
src/server.py
Show inline comments
 
@@ -51,7 +51,13 @@ class Server:
 
		self._ss.listen(1)
 

	
 
		self._lastIndex=-1
 
		self._dataFile=None
 
		self._dataFileHandle=None
 

	
 
	@property
 
	def _dataFile(self):
 
		if not self._dataFileHandle:
 
			self._dataFileHandle=open(self._filename, mode="rb+")
 
		return self._dataFileHandle
 

	
 
	def serve(self):
 
		while True:
 
@@ -113,8 +119,6 @@ class Server:
 
	def _receiveData(self,jsonData,binData):
 
		log.info("received data block #{0}: {1}...{2}".format(jsonData["index"],binData[:5],binData[-5:]))
 

	
 
		if not self._dataFile:
 
			self._dataFile=open(self._filename, mode="rb+")
 
		i=jsonData["index"]
 
		if self._lastIndex+1!=i:
 
			self._dataFile.seek(i*self.BLOCK_SIZE)
 
@@ -127,8 +131,8 @@ class Server:
 

	
 
	def _finalize(self):
 
		log.info("closing session...")
 
		if self._dataFile:
 
			self._dataFile.close()
 
		self._dataFile.close()
 
		self._dataFileHandle=None
 
		if self._treeFile:
 
			log.info("updating hash tree...")
 
			for (k,v) in self._newLeaves.items():
0 comments (0 inline, 0 general)