[prev in list] [next in list] [prev in thread] [next in thread] 

List:       mapserver-users
Subject:    Re: [mapserver-users] Mapcache - best way to find broken or white tiles in a service?
From:       Mark Volz <MarkVolz () co ! lyon ! mn ! us>
Date:       2019-02-20 19:57:11
Message-ID: 6b0eeb97ece84f8ab3b055d346975a99 () co ! lyon ! mn ! us
[Download RAW message or body]

[Attachment #2 (text/plain)]

Travis,

Thank you for your ideas.  The tiles themselves existed in Mapcache as white images \
so Mapcache returned a "valid" image instead of a 404.  I was able to find the white \
tiles by just deleting all the <1K files in the area.  However, if I ever notice the \
issue again I will definitely consider using the mapcache_seed command line with a \
shapefile to force the tiles to rebuild...  That would have been quicker than \
searching for small files!

Thank You!

Sincerely,
Mark Volz, GISP
Lyon County GIS Coordinator

From: Travis Kirstine <traviskirstine@gmail.com>
Sent: Wednesday, February 20, 2019 12:45 PM
To: Mark Volz <MarkVolz@co.lyon.mn.us>
Cc: mapserver-users@lists.osgeo.org
Subject: Re: [mapserver-users] Mapcache - best way to find broken or white tiles in a \
service?

SWHHS/LYON/LINCOLN COUNTY SECURITY NOTICE:
This email originated from an external sender. Exercise caution before clicking on \
any links or attachments and consider whether you know the sender. For more \
information please contact IT support. ________________________________
You shouldn't have any cached "broken" tiles unless your source WMS is generating the \
white images (metatiles).  I believe MapCache will generate a 404 and return a empty \
tile if configured.  This may be the white tiles you are seeing.

   <!-- errors
        configure how error will be reported back to a client:
          - log : no error is reported back, except an http error code.
          - report : return the error message to the client in textual format
          - empty_img : return an empty image to the client. the actual error code is \
                in the X-Mapcache-Error http header
          - report_img : return an image with the error text included inside. not \
                implemented yet.
        the default setting is to report the error message back to the user. In \
                production, you might want to set this to "log"
        if you're paranoid, or to "empty_img" if you want to play nice with \
                non-conforming clients.
   -->
   <errors>report</errors>

It can be very difficult to locate and clean up tiles from a cache, the easiest \
method and in some cases the fastest is simply to create a new cache and delete the \
old one.  One alternative is to use the mapcache_seed command line tool to either -f \
force the creation of new tiles or use the -mode delete option to delete the tiles \
from the cache.  BTW you can use a polygon (shapefile) with mapcache_seed to only \
update / delete the desired area using the -d flag.

Also if you are using a disk cache you might be using symlinks which will allow \
mapcache to "reuse" blank tiles.  If this is the case you might need to find / delete \
the symlinks rather than a "file"

<cache name="disk" type="disk">
   <!-- base
        Absolute filesystem path where the tile structure will be stored.
        This directory needs to be readable and writable by the user running
        Apache.
   -->
   <base>/tmp</base>
   <!-- symlink_blank
        Enable blank (i.e. uniform color) tile detection. Blank tiles will be
        detected at creation time and linked to a single blank tile on disk
        to preserve disk space.
   -->
   <symlink_blank/>
</cache>



On Tue, 19 Feb 2019 at 16:47, Mark Volz \
<MarkVolz@co.lyon.mn.us<mailto:MarkVolz@co.lyon.mn.us>> wrote: Hello,

On my webmap I noticed a few broken (white) tiles in a single area from my mapcache \
server.  I would like to know the best way to find broken tiles in my mapcache \
service.

•         Initially I was concerned that I would need to the tile number and folder \
location by using the BBOX, WIDTH, and TILE RESOLUTION from the request.  However, I \
figured out using the mapcache demo is easier to work with /mapcache/demo/

•         Would it be better just to delete any tile that is 1K or smaller?  These \
problibly are tiles that are broken, or intended to be blank in the first place.

•         What do others do to validate that the mapcache tiles have been built \
appropriately? Thanks!

Sincerely,
Mark Volz, GISP
Lyon County GIS Coordinator

_______________________________________________
mapserver-users mailing list
mapserver-users@lists.osgeo.org<mailto:mapserver-users@lists.osgeo.org>
https://lists.osgeo.org/mailman/listinfo/mapserver-users<https://linkprotect.cudasvc.c \
om/url?a=https%3a%2f%2flists.osgeo.org%2fmailman%2flistinfo%2fmapserver-users&c=E,1,gv \
eW-RkOo02oWE2k1bz8bdevgeGXtHIFgPVZTknU4BqbCzVvBf8W1tFSE-S6hNpXP8EbrJA9-gliSJgEPjN0pe3kB4lW6judhh1ZLrfi&typo=1>



[Attachment #3 (text/html)]

<html xmlns:v="urn:schemas-microsoft-com:vml" \
xmlns:o="urn:schemas-microsoft-com:office:office" \
xmlns:w="urn:schemas-microsoft-com:office:word" \
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" \
xmlns="http://www.w3.org/TR/REC-html40"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
	{mso-style-name:msonormal;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman",serif;}
p.gmail-m-3411408627808268408msolistparagraph, \
li.gmail-m-3411408627808268408msolistparagraph, \
div.gmail-m-3411408627808268408msolistparagraph  \
{mso-style-name:gmail-m_-3411408627808268408msolistparagraph;  \
mso-margin-top-alt:auto;  margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman",serif;}
span.EmailStyle19
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D">Travis,<o:p></o:p></span></p>
 <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
 <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D">Thank \
you for your ideas.&nbsp; The tiles themselves existed in Mapcache as white images so \
Mapcache returned a "valid" image instead of a 404.&nbsp; I was able to find  the \
white tiles by just deleting all the &lt;1K files in the area.&nbsp; However, if I \
ever notice the issue again I will definitely consider using the mapcache_seed \
command line with a shapefile to force the tiles to rebuild...&nbsp; That would have \
been quicker than  searching for small files!<o:p></o:p></span></p>
<p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
 <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D">Thank \
You!<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
 <div>
<p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D">Sincerely,<o:p></o:p></span></p>
 <p class="MsoNormal"><b><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D">Mark \
Volz, GISP</span></b><b><span \
style="font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D"><o:p></o:p></span></b></p>
 <p class="MsoNormal"><b><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D">Lyon \
County GIS Coordinator<o:p></o:p></span></b></p> </div>
<p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
 <div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif">From:</span></b><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif"> Travis Kirstine \
&lt;traviskirstine@gmail.com&gt; <br>
<b>Sent:</b> Wednesday, February 20, 2019 12:45 PM<br>
<b>To:</b> Mark Volz &lt;MarkVolz@co.lyon.mn.us&gt;<br>
<b>Cc:</b> mapserver-users@lists.osgeo.org<br>
<b>Subject:</b> Re: [mapserver-users] Mapcache - best way to find broken or white \
tiles in a service?<o:p></o:p></span></p> </div>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<div style="border:dotted #003333 1.5pt;padding:2.0pt 2.0pt 2.0pt 2.0pt">
<p class="MsoNormal" style="background:pink"><b><span \
style="font-size:16.0pt;font-family:&quot;Courier \
New&quot;;color:black">SWHHS/LYON/LINCOLN COUNTY SECURITY NOTICE:</span></b> \
<o:p></o:p></p> <div>
<p class="MsoNormal" style="text-indent:12.0pt;background:pink"><b><span \
style="font-size:10.0pt;font-family:&quot;Arial&quot;,sans-serif">This email \
originated from an external sender. Exercise caution before clicking on any links or \
attachments and consider whether  you know the sender. For more information please \
contact IT support.<o:p></o:p></span></b></p> </div>
</div>
<div class="MsoNormal" align="center" style="text-align:center">
<hr size="2" width="100%" align="center">
</div>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">You shouldn't have any cached &quot;broken&quot; tiles unless \
your source WMS is generating the white images (metatiles).&nbsp; I believe MapCache \
will generate a 404 and return a empty tile if configured.&nbsp; This may be the \
white tiles you are seeing.&nbsp;<o:p></o:p></p> </div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">&nbsp; &nbsp;&lt;!-- errors<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; &nbsp; &nbsp; &nbsp; configure how error will be reported \
back to a client:<o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - log : no error is reported \
back, except an http error code.<o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - report : return the error \
message to the client in textual format<o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - empty_img : return an empty \
image to the client. the actual error code is in the X-Mapcache-Error http \
header<o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - report_img : return an \
image with the error text included inside. not implemented yet.<o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp; &nbsp; &nbsp; the default setting is to report the \
error message back to the user. In production, you might want to set this to \
&quot;log&quot;<o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp; &nbsp; &nbsp; if you're paranoid, or to \
&quot;empty_img&quot; if you want to play nice with non-conforming \
clients.<o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp;--&gt;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; &nbsp;&lt;errors&gt;report&lt;/errors&gt;<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">It can be very difficult to locate and clean up tiles from a \
cache, the easiest method and in some cases the fastest is simply to create a new \
cache and delete the old one.&nbsp; One alternative is to use the mapcache_seed \
command line tool  to either -f force the creation of new tiles or use the -mode \
delete option to delete the tiles from the cache.&nbsp; BTW you can use a polygon \
(shapefile) with mapcache_seed to only update / delete the desired area using the -d \
flag.&nbsp;<o:p></o:p></p> </div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">Also if you are using a disk cache you might be using symlinks \
which will allow mapcache to &quot;reuse&quot; blank tiles.&nbsp; If this is the case \
you might need to find / delete the symlinks rather than a \
&quot;file&quot;<o:p></o:p></p> </div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">&lt;cache name=&quot;disk&quot; \
type=&quot;disk&quot;&gt;<o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp;&lt;!-- base<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; &nbsp; &nbsp; &nbsp; Absolute filesystem path where the \
tile structure will be stored.<o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp; &nbsp; &nbsp; This directory needs to be readable \
and writable by the user running<o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp; &nbsp; &nbsp; Apache.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; &nbsp;--&gt;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; &nbsp;&lt;base&gt;/tmp&lt;/base&gt;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; &nbsp;&lt;!-- symlink_blank<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b>&nbsp; &nbsp; &nbsp; &nbsp; Enable blank (i.e. uniform color) \
tile detection. Blank tiles will be</b><o:p></o:p></p> </div>
<div>
<p class="MsoNormal"><b>&nbsp; &nbsp; &nbsp; &nbsp; detected at creation time and \
linked to a single blank tile on disk</b><o:p></o:p></p> </div>
<div>
<p class="MsoNormal"><b>&nbsp; &nbsp; &nbsp; &nbsp; to preserve disk \
space.</b><o:p></o:p></p> </div>
<div>
<p class="MsoNormal">&nbsp; &nbsp;--&gt;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; &nbsp;&lt;symlink_blank/&gt;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&lt;/cache&gt;<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<div>
<div>
<p class="MsoNormal">On Tue, 19 Feb 2019 at 16:47, Mark Volz &lt;<a \
href="mailto:MarkVolz@co.lyon.mn.us">MarkVolz@co.lyon.mn.us</a>&gt; \
wrote:<o:p></o:p></p> </div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in \
6.0pt;margin-left:4.8pt;margin-right:0in"> <div>
<div>
<p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hello,<o:p></o:p></p> <p \
class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
 <p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">On \
my webmap I noticed a few broken (white) tiles in a single area from my mapcache \
server.&nbsp; I would like to know the best way to find broken tiles in my mapcache \
service.&nbsp; <o:p></o:p></p>
<p class="gmail-m-3411408627808268408msolistparagraph"><span \
style="font-family:Symbol"> ·</span><span \
style="font-size:7.0pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
</span>Initially I was concerned that I would need to the tile number and folder \
location by using the BBOX, WIDTH, and TILE RESOLUTION from the request.&nbsp; \
However, I figured out using the mapcache demo is easier to work with \
/mapcache/demo/<o:p></o:p></p> <p \
class="gmail-m-3411408627808268408msolistparagraph"><span style="font-family:Symbol"> \
·</span><span style="font-size:7.0pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 </span>Would it be better just to delete any tile that is 1K or smaller?&nbsp; These \
problibly are tiles that are broken, or intended to be blank in the first \
place.&nbsp; <o:p></o:p></p>
<p class="gmail-m-3411408627808268408msolistparagraph"><span \
style="font-family:Symbol"> ·</span><span \
style="font-size:7.0pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>What \
do others do to validate that the mapcache tiles have been built \
appropriately?<o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Thanks!<o:p></o:p></p> <p \
class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">Sincerely,</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span \
style="color:#1F497D">Mark Volz, GISP</span></b><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span \
style="color:#1F497D">Lyon County GIS Coordinator</span></b><o:p></o:p></p> <p \
class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
 </div>
</div>
<p class="MsoNormal">_______________________________________________<br>
mapserver-users mailing list<br>
<a href="mailto:mapserver-users@lists.osgeo.org" \
target="_blank">mapserver-users@lists.osgeo.org</a><br> <a \
href="https://linkprotect.cudasvc.com/url?a=https%3a%2f%2flists.osgeo.org%2fmailman%2f \
listinfo%2fmapserver-users&amp;c=E,1,gveW-RkOo02oWE2k1bz8bdevgeGXtHIFgPVZTknU4BqbCzVvBf8W1tFSE-S6hNpXP8EbrJA9-gliSJgEPjN0pe3kB4lW6judhh1ZLrfi&amp;typo=1" \
target="_blank">https://lists.osgeo.org/mailman/listinfo/mapserver-users</a><o:p></o:p></p>
 </blockquote>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>


[Attachment #4 (unknown)]

_______________________________________________
mapserver-users mailing list
mapserver-users@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/mapserver-users

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic