Skip to content

Commit

Permalink
Have one error files per layer
Browse files Browse the repository at this point in the history
  • Loading branch information
sbrunner committed Aug 18, 2014
1 parent 16e8df8 commit b33c002
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 5 deletions.
3 changes: 3 additions & 0 deletions README.rst
Expand Up @@ -391,6 +391,9 @@ If we set a file path in config file:
The tiles that in error will be append to the file, ant the tiles can be regenerated with
``./buildout/bin/generate_tiles --layer <layer> --tiles <path>``.

The ``<path>`` can be ``/tmp/error_{layer}_{datetime:%Y-%m-%d_%H:%M:%S}``
to have one file per layer and per run.

Proxy/cache issue
-----------------

Expand Down
17 changes: 14 additions & 3 deletions tilecloud_chain/__init__.py
Expand Up @@ -804,7 +804,7 @@ def validate_mapcache_config(self):
return not error

def set_layer(self, layer, options):
self.log_tiles_error(message="Start the layer '%s' generation" % layer)
self.create_log_tiles_error(layer)
self.layer = self.layers[layer]

if options.near is not None or (
Expand Down Expand Up @@ -1008,12 +1008,23 @@ def __repr__(self):

error_file = None

def create_log_tiles_error(self, layer):
if 'error_file' in self.config['generation']:
now = datetime.now()
time = now.strftime('%d-%m-%Y %H:%M:%S')
self.error_file = open(
self.config['generation']['error_file'].format(
layer=layer, datetime=now
),
'a'
)
self.error_file.write("# [%s] Start the layer '%s' generation\n" % (time, layer))

def log_tiles_error(self, tilecoord=None, message=None):
if 'error_file' in self.config['generation']:
time = datetime.now().strftime('%d-%m-%Y %H:%M:%S')
if self.error_file is None:
self.error_file = open(self.config['generation']['error_file'], 'a')
self.error_file.write('# [%s] Start generation\n' % time)
raise "Missing error file"

if tilecoord is None:
self.error_file.write('# [%s] %s\n' % (time, message.replace('\n', ' ')))
Expand Down
3 changes: 1 addition & 2 deletions tilecloud_chain/tests/test_generate.py
Expand Up @@ -939,8 +939,7 @@ def test_error_file(self):
regex=True,
expected=[[
'error.list',
u"""# \[[0-9][0-9]-[0-9][0-9]-20[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9]\] Start generation
# \[[0-9][0-9]-[0-9][0-9]-20[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9]\] Start the layer 'point_error' generation
u"""# \[[0-9][0-9]-[0-9][0-9]-20[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9]\] Start the layer 'point_error' generation
0/0/0:\+8/\+8 # \[[0-9][0-9]-[0-9][0-9]-20[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9]\] 'cannot identify image file .*
0/0/8:\+8/\+8 # \[[0-9][0-9]-[0-9][0-9]-20[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9]\] 'cannot identify image file .*
0/8/0:\+8/\+8 # \[[0-9][0-9]-[0-9][0-9]-20[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9]\] 'cannot identify image file .*
Expand Down

0 comments on commit b33c002

Please sign in to comment.