~/project/stetl/git/examples/basics/10_jinja2_templating ~/project/stetl/git/examples/basics
==== running etl.sh for 10_jinja2_templating ====
2023-01-09 14:54:26,928 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:26,970 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:26,982 main INFO Stetl version = 2.1
2023-01-09 14:54:26,983 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:26,983 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/10_jinja2_templating
2023-01-09 14:54:26,983 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:26,984 ETL INFO START
2023-01-09 14:54:26,984 util INFO Timer start: total ETL
2023-01-09 14:54:26,984 chain INFO Assembling Chain: input_json|filter_template_xml|output_xml_file...
2023-01-09 14:54:26,999 input INFO cfg = {'class': 'stetl.inputs.fileinput.JsonFileInput', 'file_path': 'input/cities.json'}
2023-01-09 14:54:26,999 fileinput INFO file_list=['input/cities.json']
2023-01-09 14:54:27,009 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/cities.xml'}
2023-01-09 14:54:27,009 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/10_jinja2_templating
2023-01-09 14:54:27,009 chain INFO Running Chain: input_json|filter_template_xml|output_xml_file
2023-01-09 14:54:27,009 templatingfilter INFO Init: templating
2023-01-09 14:54:27,048 templatingfilter INFO template file read and template created OK: templates/cities-json2xml.jinja2
2023-01-09 14:54:27,048 fileinput INFO Read/parse for start for file=input/cities.json....
2023-01-09 14:54:27,048 fileinput INFO Read/parse ok for file=input/cities.json
2023-01-09 14:54:27,048 fileinput INFO all files done
2023-01-09 14:54:27,048 fileoutput INFO writing to file output/cities.xml
2023-01-09 14:54:27,049 fileoutput INFO written to output/cities.xml
2023-01-09 14:54:27,049 component INFO JsonFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:27,049 templatingfilter INFO Exit: templating
2023-01-09 14:54:27,049 component INFO Jinja2TemplatingFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:27,049 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:27,049 chain INFO DONE - 1 rounds - chain=input_json|filter_template_xml|output_xml_file 
2023-01-09 14:54:27,049 chain INFO Assembling Chain: input_json|filter_template_gml|output_gml_file...
2023-01-09 14:54:27,049 input INFO cfg = {'class': 'stetl.inputs.fileinput.JsonFileInput', 'file_path': 'input/cities.json'}
2023-01-09 14:54:27,049 fileinput INFO file_list=['input/cities.json']
2023-01-09 14:54:27,049 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/cities.gml'}
2023-01-09 14:54:27,049 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/10_jinja2_templating
2023-01-09 14:54:27,050 chain INFO Running Chain: input_json|filter_template_gml|output_gml_file
2023-01-09 14:54:27,050 templatingfilter INFO Init: templating
2023-01-09 14:54:27,050 templatingfilter INFO Read JSON file with globals from: input/globals.json
2023-01-09 14:54:27,054 templatingfilter INFO template file read and template created OK: templates/cities-json2gml.jinja2
2023-01-09 14:54:27,054 fileinput INFO Read/parse for start for file=input/cities.json....
2023-01-09 14:54:27,054 fileinput INFO Read/parse ok for file=input/cities.json
2023-01-09 14:54:27,055 fileinput INFO all files done
2023-01-09 14:54:27,062 fileoutput INFO writing to file output/cities.gml
2023-01-09 14:54:27,063 fileoutput INFO written to output/cities.gml
2023-01-09 14:54:27,063 component INFO JsonFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:27,063 templatingfilter INFO Exit: templating
2023-01-09 14:54:27,063 component INFO Jinja2TemplatingFilter invokes=1 time(total, min, max, avg) = 0.007 0.007 0.007 0.007
2023-01-09 14:54:27,063 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:27,063 chain INFO DONE - 1 rounds - chain=input_json|filter_template_gml|output_gml_file 
2023-01-09 14:54:27,063 chain INFO Assembling Chain: input_geojson|filter_template_geojson2gml|output_gml_file2...
2023-01-09 14:54:27,064 input INFO cfg = {'class': 'stetl.inputs.fileinput.JsonFileInput', 'file_path': 'https://raw.githubusercontent.com/justb4/stetl/master/examples/basics/10_jinja2_templating/input/cities-gjson.json', 'output_format': 'geojson_collection'}
2023-01-09 14:54:27,064 fileinput INFO file_list=['https://raw.githubusercontent.com/justb4/stetl/master/examples/basics/10_jinja2_templating/input/cities-gjson.json']
2023-01-09 14:54:27,064 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/cities-gjson.gml'}
2023-01-09 14:54:27,064 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/10_jinja2_templating
2023-01-09 14:54:27,064 chain INFO Running Chain: input_geojson|filter_template_geojson2gml|output_gml_file2
2023-01-09 14:54:27,064 templatingfilter INFO Init: templating
2023-01-09 14:54:27,065 templatingfilter INFO Read JSON file with globals from: input/globals.json
2023-01-09 14:54:27,065 templatingfilter INFO Read JSON file with globals from: https://raw.githubusercontent.com/justb4/stetl/master/examples/basics/10_jinja2_templating/input/more-globals.json
2023-01-09 14:54:27,265 templatingfilter INFO template file read and template created OK: templates/cities-gjson2gml.jinja2
2023-01-09 14:54:27,265 fileinput INFO Read/parse for start for file=https://raw.githubusercontent.com/justb4/stetl/master/examples/basics/10_jinja2_templating/input/cities-gjson.json....
2023-01-09 14:54:27,448 fileinput INFO Read/parse ok for file=https://raw.githubusercontent.com/justb4/stetl/master/examples/basics/10_jinja2_templating/input/cities-gjson.json
2023-01-09 14:54:27,449 fileinput INFO all files done
2023-01-09 14:54:27,467 fileoutput INFO writing to file output/cities-gjson.gml
2023-01-09 14:54:27,467 fileoutput INFO written to output/cities-gjson.gml
2023-01-09 14:54:27,467 component INFO JsonFileInput invokes=1 time(total, min, max, avg) = 0.184 0.184 0.184 0.184
2023-01-09 14:54:27,467 templatingfilter INFO Exit: templating
2023-01-09 14:54:27,467 component INFO Jinja2TemplatingFilter invokes=1 time(total, min, max, avg) = 0.018 0.018 0.018 0.018
2023-01-09 14:54:27,468 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:27,468 chain INFO DONE - 1 rounds - chain=input_geojson|filter_template_geojson2gml|output_gml_file2 
2023-01-09 14:54:27,468 chain INFO Assembling Chain: input_geojson|filter_template_geojson2gml|output_std...
2023-01-09 14:54:27,468 input INFO cfg = {'class': 'stetl.inputs.fileinput.JsonFileInput', 'file_path': 'https://raw.githubusercontent.com/justb4/stetl/master/examples/basics/10_jinja2_templating/input/cities-gjson.json', 'output_format': 'geojson_collection'}
2023-01-09 14:54:27,468 fileinput INFO file_list=['https://raw.githubusercontent.com/justb4/stetl/master/examples/basics/10_jinja2_templating/input/cities-gjson.json']
2023-01-09 14:54:27,469 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardOutput'}
2023-01-09 14:54:27,469 chain INFO Running Chain: input_geojson|filter_template_geojson2gml|output_std
2023-01-09 14:54:27,469 templatingfilter INFO Init: templating
2023-01-09 14:54:27,469 templatingfilter INFO Read JSON file with globals from: input/globals.json
2023-01-09 14:54:27,469 templatingfilter INFO Read JSON file with globals from: https://raw.githubusercontent.com/justb4/stetl/master/examples/basics/10_jinja2_templating/input/more-globals.json
2023-01-09 14:54:27,635 templatingfilter INFO template file read and template created OK: templates/cities-gjson2gml.jinja2
2023-01-09 14:54:27,635 fileinput INFO Read/parse for start for file=https://raw.githubusercontent.com/justb4/stetl/master/examples/basics/10_jinja2_templating/input/cities-gjson.json....
2023-01-09 14:54:27,783 fileinput INFO Read/parse ok for file=https://raw.githubusercontent.com/justb4/stetl/master/examples/basics/10_jinja2_templating/input/cities-gjson.json
2023-01-09 14:54:27,784 fileinput INFO all files done
2023-01-09 14:54:27,791 component INFO JsonFileInput invokes=1 time(total, min, max, avg) = 0.149 0.149 0.149 0.149
2023-01-09 14:54:27,791 templatingfilter INFO Exit: templating
2023-01-09 14:54:27,791 component INFO Jinja2TemplatingFilter invokes=1 time(total, min, max, avg) = 0.007 0.007 0.007 0.007
2023-01-09 14:54:27,791 component INFO StandardOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:27,791 chain INFO DONE - 1 rounds - chain=input_geojson|filter_template_geojson2gml|output_std 
2023-01-09 14:54:27,792 chain INFO Assembling Chain: input_addresses_csv|convert_record_array_to_struct|filter_template_addresses2inspire|output_inspire_addresses...
2023-01-09 14:54:27,792 input INFO cfg = {'class': 'stetl.inputs.fileinput.CsvFileInput', 'file_path': 'input/addresses.csv'}
2023-01-09 14:54:27,792 fileinput INFO file_list=['input/addresses.csv']
2023-01-09 14:54:27,796 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/inspire-addresses.gml'}
2023-01-09 14:54:27,796 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/10_jinja2_templating
2023-01-09 14:54:27,796 chain INFO Running Chain: input_addresses_csv|convert_record_array_to_struct|filter_template_addresses2inspire|output_inspire_addresses
2023-01-09 14:54:27,796 fileinput INFO Open CSV file: input/addresses.csv
2023-01-09 14:54:27,797 templatingfilter INFO Init: templating
2023-01-09 14:54:27,797 templatingfilter INFO Read JSON file with globals from: input/addresses-globals.json
2023-01-09 14:54:27,818 templatingfilter INFO template file read and template created OK: templates/addresses2inspire-ad.jinja2
2023-01-09 14:54:27,823 fileoutput INFO writing to file output/inspire-addresses.gml
2023-01-09 14:54:27,824 fileoutput INFO written to output/inspire-addresses.gml
2023-01-09 14:54:27,824 component INFO CsvFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:27,824 component INFO FormatConverter invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:27,824 templatingfilter INFO Exit: templating
2023-01-09 14:54:27,824 component INFO Jinja2TemplatingFilter invokes=1 time(total, min, max, avg) = 0.005 0.005 0.005 0.005
2023-01-09 14:54:27,824 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:27,824 chain INFO DONE - 1 rounds - chain=input_addresses_csv|convert_record_array_to_struct|filter_template_addresses2inspire|output_inspire_addresses 
2023-01-09 14:54:27,824 util INFO Timer end: total ETL time=1.0 sec
2023-01-09 14:54:27,824 ETL INFO ALL DONE
<?xml version='1.0' encoding='utf-8'?>
<cities:FeatureCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                       xmlns:cities="http://cities.maptools.org/"
                       xmlns:gml="http://www.opengis.net/gml"
                       xsi:schemaLocation="http://cities.maptools.org/ ../gmlcities.xsd  http://www.opengis.net/gml http://schemas.opengis.net/gml/2.1.2/feature.xsd">

    <!--
    Generated with a Jinja2 template. The 'globs' variables come from the file globals.json containing global
    variables/structures. The actual/dynamic data (cities) comes from the input CSV file cities.json.
    Also a file with macros templates/macros.tpl.xml is imported, allowing reuse for common structures like INSPIRE id's.
    -->


    <gml:description>
       This example tests GML generation with Jinja2 templating, including the use of Jinja2 globals., such as for this description. Globals provide more or less constant/semi static information like point of contacts, global names, id-prefixes etc.
    </gml:description>



    <!-- Rendered by macro render_name() -->
    <gml:name>
       Test for GML generation via Jinja2 templating
    </gml:name>


    <!-- bbox present in geojson input -->
    <gml:boundedBy>
        <gml:Box>
            <gml:coord>
                <gml:X>4.88</gml:X>
                <gml:Y>41.88</gml:Y>
            </gml:coord>
            <gml:coord>
                <gml:X>12.52</gml:X>
                <gml:Y>53.98</gml:Y>
            </gml:coord>
        </gml:Box>
    </gml:boundedBy>

        <gml:featureMember>
            <cities:City>
                <cities:name>Amsterdam</cities:name>
                <cities:population>779808</cities:population>
                <cities:geometry>
                    <gml:Point srsName="urn:ogc:def:crs:EPSG::4258" gml:id="point-1"><gml:pos>4.89483636363636 52.3730454545455</gml:pos></gml:Point>
                </cities:geometry>
            </cities:City>
        </gml:featureMember>
        <gml:featureMember>
            <cities:City>
                <cities:name>Bonn</cities:name>
                <cities:population>327913</cities:population>
                <cities:geometry>
                    <gml:Point srsName="urn:ogc:def:crs:EPSG::4258" gml:id="point-2"><gml:pos>7.09981818181818 50.7345545454545</gml:pos></gml:Point>
                </cities:geometry>
            </cities:City>
        </gml:featureMember>
        <gml:featureMember>
            <cities:City>
                <cities:name>Rome</cities:name>
                <cities:population>2753000</cities:population>
                <cities:geometry>
                    <gml:Point srsName="urn:ogc:def:crs:EPSG::4258" gml:id="point-3"><gml:pos>12.52 41.88</gml:pos></gml:Point>
                </cities:geometry>
            </cities:City>
        </gml:featureMember>

</cities:FeatureCollection>
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/11_formatconvert ~/project/stetl/git/examples/basics
==== running etl.sh for 11_formatconvert ====
2023-01-09 14:54:28,126 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:28,168 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:28,180 main INFO Stetl version = 2.1
2023-01-09 14:54:28,180 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:28,181 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/11_formatconvert
2023-01-09 14:54:28,181 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:28,182 ETL INFO START
2023-01-09 14:54:28,182 util INFO Timer start: total ETL
2023-01-09 14:54:28,182 chain INFO Assembling Chain: input_xml_file|convert_xml_to_string|convert_string_to_xml|output_xml_file...
2023-01-09 14:54:28,194 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.xml'}
2023-01-09 14:54:28,194 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:28,200 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/cities.xml'}
2023-01-09 14:54:28,200 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/11_formatconvert
2023-01-09 14:54:28,200 chain INFO Running Chain: input_xml_file|convert_xml_to_string|convert_string_to_xml|output_xml_file
2023-01-09 14:54:28,200 fileinput INFO Read/parse for start for file=input/cities.xml....
2023-01-09 14:54:28,200 fileinput INFO Read/parse ok for file=input/cities.xml
2023-01-09 14:54:28,200 fileinput INFO all files done
2023-01-09 14:54:28,200 fileoutput INFO writing to file output/cities.xml
2023-01-09 14:54:28,201 fileoutput INFO written to output/cities.xml
2023-01-09 14:54:28,201 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:28,201 component INFO FormatConverter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:28,201 component INFO FormatConverter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:28,201 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:28,201 chain INFO DONE - 1 rounds - chain=input_xml_file|convert_xml_to_string|convert_string_to_xml|output_xml_file 
2023-01-09 14:54:28,201 chain INFO Assembling Chain: input_complex_xml_file|convert_to_json|output_json_file...
2023-01-09 14:54:28,201 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/building-dutch-bag.xml'}
2023-01-09 14:54:28,201 fileinput INFO file_list=['input/building-dutch-bag.xml']
2023-01-09 14:54:28,202 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/building-dutch.json'}
2023-01-09 14:54:28,202 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/11_formatconvert
2023-01-09 14:54:28,202 chain INFO Running Chain: input_complex_xml_file|convert_to_json|output_json_file
2023-01-09 14:54:28,202 fileinput INFO Read/parse for start for file=input/building-dutch-bag.xml....
2023-01-09 14:54:28,203 fileinput INFO Read/parse ok for file=input/building-dutch-bag.xml
2023-01-09 14:54:28,203 fileinput INFO all files done
2023-01-09 14:54:28,209 fileoutput INFO writing to file output/building-dutch.json
2023-01-09 14:54:28,213 fileoutput INFO written to output/building-dutch.json
2023-01-09 14:54:28,213 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:28,213 component INFO FormatConverter invokes=1 time(total, min, max, avg) = 0.007 0.007 0.007 0.007
2023-01-09 14:54:28,213 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.004 0.004 0.004 0.004
2023-01-09 14:54:28,213 chain INFO DONE - 1 rounds - chain=input_complex_xml_file|convert_to_json|output_json_file 
2023-01-09 14:54:28,213 chain INFO Assembling Chain: input_gml_sf_file|convert_to_geojson|output_geojson_file...
2023-01-09 14:54:28,214 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.gml'}
2023-01-09 14:54:28,214 fileinput INFO file_list=['input/cities.gml']
2023-01-09 14:54:28,214 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/cities-gjson.json'}
2023-01-09 14:54:28,214 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/11_formatconvert
2023-01-09 14:54:28,215 chain INFO Running Chain: input_gml_sf_file|convert_to_geojson|output_geojson_file
2023-01-09 14:54:28,215 fileinput INFO Read/parse for start for file=input/cities.gml....
2023-01-09 14:54:28,215 fileinput INFO Read/parse ok for file=input/cities.gml
2023-01-09 14:54:28,215 fileinput INFO all files done
2023-01-09 14:54:28,217 fileoutput INFO writing to file output/cities-gjson.json
2023-01-09 14:54:28,218 fileoutput INFO written to output/cities-gjson.json
2023-01-09 14:54:28,219 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:28,219 component INFO FormatConverter invokes=1 time(total, min, max, avg) = 0.002 0.002 0.002 0.002
2023-01-09 14:54:28,219 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:28,219 chain INFO DONE - 1 rounds - chain=input_gml_sf_file|convert_to_geojson|output_geojson_file 
2023-01-09 14:54:28,219 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:28,219 ETL INFO ALL DONE
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/12_gdal_ogr ~/project/stetl/git/examples/basics
==== running etl.sh for 12_gdal_ogr ====
2023-01-09 14:54:28,528 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:28,571 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:28,582 main INFO Stetl version = 2.1
2023-01-09 14:54:28,583 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:28,583 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/12_gdal_ogr
2023-01-09 14:54:28,583 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:28,584 ETL INFO START
2023-01-09 14:54:28,584 util INFO Timer start: total ETL
2023-01-09 14:54:28,584 chain INFO Assembling Chain: input_geojson_file|geojson_coll_to_ogr_feature_arr|output_ogr_gmlfile...
2023-01-09 14:54:28,596 input INFO cfg = {'class': 'stetl.inputs.fileinput.JsonFileInput', 'file_path': 'input/cities.geojson', 'output_format': 'geojson_collection'}
2023-01-09 14:54:28,596 fileinput INFO file_list=['input/cities.geojson']
2023-01-09 14:54:28,604 output INFO cfg = {'class': 'stetl.outputs.ogroutput.OgrOutput', 'input_format': 'ogr_feature_array', 'dest_data_source': 'output/cities.gml', 'overwrite': 'True', 'new_layer_name': 'cities', 'dest_format': 'GML'}
2023-01-09 14:54:28,604 chain INFO Running Chain: input_geojson_file|geojson_coll_to_ogr_feature_arr|output_ogr_gmlfile
2023-01-09 14:54:28,604 ogroutput INFO Using GDAL/OGR version: 3020200
2023-01-09 14:54:28,606 ogroutput INFO Opened OGR dest ok: output/cities.gml 
2023-01-09 14:54:28,606 fileinput INFO Read/parse for start for file=input/cities.geojson....
2023-01-09 14:54:28,607 fileinput INFO Read/parse ok for file=input/cities.geojson
2023-01-09 14:54:28,607 fileinput INFO all files done
2023-01-09 14:54:28,616 ogroutput INFO End writing to: output/cities.gml
2023-01-09 14:54:28,616 component INFO JsonFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:28,617 component INFO FormatConverter invokes=1 time(total, min, max, avg) = 0.009 0.009 0.009 0.009
2023-01-09 14:54:28,617 component INFO OgrOutput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:28,617 chain INFO DONE - 1 rounds - chain=input_geojson_file|geojson_coll_to_ogr_feature_arr|output_ogr_gmlfile 
2023-01-09 14:54:28,617 chain INFO Assembling Chain: input_gml_file_to_array|ogr_feature_array_to_geojson_collection|tolowercase_filter|output_file...
2023-01-09 14:54:28,623 input INFO cfg = {'class': 'stetl.inputs.ogrinput.OgrInput', 'data_source': 'input/cities.gml', 'source_format': 'GML', 'output_format': 'ogr_feature_array'}
2023-01-09 14:54:28,626 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/cities.geojson'}
2023-01-09 14:54:28,626 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/12_gdal_ogr
2023-01-09 14:54:28,626 chain INFO Running Chain: input_gml_file_to_array|ogr_feature_array_to_geojson_collection|tolowercase_filter|output_file
2023-01-09 14:54:28,626 ogrinput INFO Using GDAL/OGR version: 3020200
2023-01-09 14:54:28,627 ogrinput INFO Opened OGR source ok: input/cities.gml layer count=1
2023-01-09 14:54:28,628 ogrinput INFO Start reading from OGR Source: input/cities.gml, Layer: heronfeat
2023-01-09 14:54:28,628 ogrinput INFO End reading all features from Layer: heronfeat count=5
2023-01-09 14:54:28,637 fileoutput INFO writing to file output/cities.geojson
2023-01-09 14:54:28,639 fileoutput INFO written to output/cities.geojson
2023-01-09 14:54:28,639 ogrinput INFO Closing OGR source: input/cities.gml
2023-01-09 14:54:28,640 component INFO OgrInput invokes=2 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:28,640 component INFO FormatConverter invokes=2 time(total, min, max, avg) = 0.008 0.008 0.008 0.004
2023-01-09 14:54:28,640 component INFO ToLowerFilter invokes=2 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:28,640 component INFO FileOutput invokes=2 time(total, min, max, avg) = 0.002 0.002 0.002 0.001
2023-01-09 14:54:28,640 chain INFO DONE - 2 rounds - chain=input_gml_file_to_array|ogr_feature_array_to_geojson_collection|tolowercase_filter|output_file 
2023-01-09 14:54:28,640 chain INFO Assembling Chain: input_gml_file|output_ogr_shapefile...
2023-01-09 14:54:28,640 input INFO cfg = {'class': 'stetl.inputs.ogrinput.OgrInput', 'data_source': 'input/cities.gml', 'source_format': 'GML', 'source_options': "{'GDAL_CACHEMAX': '64', 'CPL_DEBUG': 'OFF'}", 'output_format': 'ogr_feature'}
2023-01-09 14:54:28,640 output INFO cfg = {'class': 'stetl.outputs.ogroutput.OgrOutput', 'input_format': 'ogr_feature', 'dest_data_source': 'output/cities.shp', 'overwrite': 'True', 'new_layer_name': 'cities', 'dest_format': 'ESRI Shapefile'}
2023-01-09 14:54:28,641 chain INFO Running Chain: input_gml_file|output_ogr_shapefile
2023-01-09 14:54:28,641 ogrinput INFO Using GDAL/OGR version: 3020200
2023-01-09 14:54:28,642 ogrinput INFO Opened OGR source ok: input/cities.gml layer count=1
2023-01-09 14:54:28,642 ogroutput INFO Using GDAL/OGR version: 3020200
2023-01-09 14:54:28,644 ogroutput INFO Opened OGR dest ok: output/cities.shp 
2023-01-09 14:54:28,644 ogrinput INFO Start reading from OGR Source: input/cities.gml, Layer: heronfeat
2023-01-09 14:54:28,645 ogrinput INFO End reading from Layer: heronfeat
2023-01-09 14:54:28,645 ogroutput INFO End writing to: output/cities.shp
2023-01-09 14:54:28,645 ogrinput INFO Closing OGR source: input/cities.gml
2023-01-09 14:54:28,645 ogroutput INFO End writing to: output/cities.shp
2023-01-09 14:54:28,645 component INFO OgrInput invokes=7 time(total, min, max, avg) = 0.001 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:28,645 component INFO OgrOutput invokes=7 time(total, min, max, avg) = 0.001 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:28,646 chain INFO DONE - 7 rounds - chain=input_gml_file|output_ogr_shapefile 
2023-01-09 14:54:28,646 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:28,646 ETL INFO ALL DONE
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/13_dbinput ~/project/stetl/git/examples/basics
==== running etl.sh for 13_dbinput ====
2023-01-09 14:54:28,977 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:29,018 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:29,029 main INFO Stetl version = 2.1
2023-01-09 14:54:29,030 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:29,030 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/13_dbinput
2023-01-09 14:54:29,031 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:29,032 ETL INFO START
2023-01-09 14:54:29,032 util INFO Timer start: total ETL
2023-01-09 14:54:29,032 chain INFO Assembling Chain: input_sqlite_all|convert_records_to_json|output_cities_file...
2023-01-09 14:54:29,052 input INFO cfg = {'class': 'stetl.inputs.dbinput.SqliteDbInput', 'output_format': 'record_array', 'database_name': 'input/cities.sdb', 'table': 'cities', 'read_once': 'True', 'query': 'select * from cities'}
2023-01-09 14:54:29,059 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/cities.json'}
2023-01-09 14:54:29,059 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/13_dbinput
2023-01-09 14:54:29,059 chain INFO Running Chain: input_sqlite_all|convert_records_to_json|output_cities_file
2023-01-09 14:54:29,059 dbinput INFO Connect to SQLite DB: input/cities.sdb
2023-01-09 14:54:29,060 dbinput INFO Connect to SQLite DB: input/cities.sdb
2023-01-09 14:54:29,060 dbinput INFO 3 records read
2023-01-09 14:54:29,060 dbinput INFO Nothing to do. All file_records done
2023-01-09 14:54:29,061 fileoutput INFO writing to file output/cities.json
2023-01-09 14:54:29,061 fileoutput INFO written to output/cities.json
2023-01-09 14:54:29,062 component INFO SqliteDbInput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:29,062 component INFO FormatConverter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,062 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,062 chain INFO DONE - 1 rounds - chain=input_sqlite_all|convert_records_to_json|output_cities_file 
2023-01-09 14:54:29,062 chain INFO Assembling Chain: input_sqlite_single|convert_record_to_json|output_city_file...
2023-01-09 14:54:29,062 input INFO cfg = {'class': 'stetl.inputs.dbinput.SqliteDbInput', 'output_format': 'record', 'database_name': 'input/cities.sdb', 'table': 'cities', 'read_once': 'True', 'query': "select * from cities where name = 'Rome'"}
2023-01-09 14:54:29,062 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/city.json'}
2023-01-09 14:54:29,062 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/13_dbinput
2023-01-09 14:54:29,062 chain INFO Running Chain: input_sqlite_single|convert_record_to_json|output_city_file
2023-01-09 14:54:29,062 dbinput INFO Connect to SQLite DB: input/cities.sdb
2023-01-09 14:54:29,063 dbinput INFO Connect to SQLite DB: input/cities.sdb
2023-01-09 14:54:29,063 dbinput INFO 1 records read
2023-01-09 14:54:29,063 dbinput INFO Nothing to do. All file_records done
2023-01-09 14:54:29,063 fileoutput INFO writing to file output/city.json
2023-01-09 14:54:29,064 fileoutput INFO written to output/city.json
2023-01-09 14:54:29,064 component INFO SqliteDbInput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:29,064 component INFO FormatConverter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,064 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:29,064 chain INFO DONE - 1 rounds - chain=input_sqlite_single|convert_record_to_json|output_city_file 
2023-01-09 14:54:29,064 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:29,064 ETL INFO ALL DONE
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/14_logfileinput ~/project/stetl/git/examples/basics
==== running etl.sh for 14_logfileinput ====
2023-01-09 14:54:29,394 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:29,436 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:29,448 main INFO Stetl version = 2.1
2023-01-09 14:54:29,449 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:29,449 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/14_logfileinput
2023-01-09 14:54:29,449 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:29,449 ETL WARNING Expanding config arguments (non fatal yet): argument of type 'NoneType' is not iterable
2023-01-09 14:54:29,450 ETL INFO START
2023-01-09 14:54:29,450 util INFO Timer start: total ETL
2023-01-09 14:54:29,450 chain INFO Assembling Chain: input_apache_log|to_record_array|output_std...
2023-01-09 14:54:29,463 input INFO cfg = {'class': 'stetl.inputs.fileinput.ApacheLogFileInput', 'log_format': '%h %l %u %t \\"%r\\" %>s %b \\"%{Referer}i\\" \\"%{User-agent}i\\" %D', 'key_map': '{\'%>s\': \'status\', \'%D\': \'deltat\', \'%{User-agent}i\': \'agent\', \'%b\': \'bytes\', \'%{Referer}i\': \'referer\', \'%t\': \'time\', "\'%h": \'host\', \'%r\': \'request\'}', 'file_path': 'input', 'filename_pattern': '*.log'}
2023-01-09 14:54:29,463 fileinput INFO file_list=['input/apache.log', 'input/apache2.log']
2023-01-09 14:54:29,471 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardOutput'}
2023-01-09 14:54:29,471 chain INFO Running Chain: input_apache_log|to_record_array|output_std
2023-01-09 14:54:29,471 fileinput INFO file opened : input/apache.log
2023-01-09 14:54:29,472 fileinput INFO EOF file
2023-01-09 14:54:29,472 fileinput INFO file opened : input/apache2.log
[{'time': 20150420084459, 'request': '/map/gast/tms/1.0.0/opentopo/EPSG28992/6/32/40.png', 'status': 200, 'bytes': 32085, 'referer': 'http://217.21.192.135/sekaarten/?id=baggeren', 'agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko', 'deltat': 2580, 'key': 'ebaac59b6e8d3b7ab59d51af0ed172e6'}, {'time': 20150420084459, 'request': '/map/gast/tms/1.0.0/opentopo/EPSG28992/6/32/41.png', 'status': 200, 'bytes': 10891, 'referer': 'http://217.21.192.135/sekaarten/?id=baggeren', 'agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko', 'deltat': 2939, 'key': '4b1188e4af8d72201d4588a7ad9eaff4'}, {'time': 20150422150832, 'request': '/map/gast/tms/1.0.0/opentopo/EPSG28992/8/93/112.png', 'status': 200, 'bytes': 6859, 'referer': 'http://kadviewer.kademo.nl/', 'agent': 'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko', 'deltat': 30144, 'key': '1f798d3fa23682f3b50ceca93d762282'}, {'time': 20150422151830, 'request': '/map/gast/tms/1.0.0/opentopo/EPSG28992/12/2306/1962.png', 'status': 200, 'bytes': 19305, 'referer': 'http://kadviewer.kademo.nl/', 'agent': 'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko', 'deltat': 109691, 'key': 'd8cba52492542c87fe51377316fd6990'}, {'time': 20150422153023, 'request': '/map/gast/tms/1.0.0/bonne_test/EPSG900913/1', 'status': 404, 'bytes': 141, 'referer': None, 'agent': 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)', 'deltat': 1817, 'key': '3cf998185c137a40525c920184bbe45c'}, {'time': 20150422154124, 'request': '/map/gast/tiles/opentopo/EPSG900913/9/263/167.png', 'status': 200, 'bytes': 30537, 'referer': 'http://app.nlextract.nl/ot/opentopo.html', 'agent': 'Mozilla/5.0 (iPad; CPU OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12F69 Safari/600.1.4', 'deltat': 2208, 'key': 'c72b3f33a7f9460efb56bf6f0d6854ec'}, {'time': 20150422154124, 'request': '/map/gast/tiles/opentopo/EPSG900913/9/262/167.png', 'status': 200, 'bytes': 26812, 'referer': 'http://app.nlextract.nl/ot/opentopo.html', 'agent': 'Mozilla/5.0 (iPad; CPU OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12F69 Safari/600.1.4', 'deltat': 1992, 'key': 'b0f0bb899689f5a552d12a1598c7ab33'}, {'time': 20150421123121, 'request': '/map/gast/tms/1.0.0/opentopo/EPSG28992/13/4187/3689.png', 'status': 304, 'bytes': 0, 'referer': None, 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 2639355, 'key': 'd425582b2c2732e746e0597df83445ab'}, {'time': 20150421123142, 'request': '/map/gast/tms/1.0.0/opentopo/EPSG28992/13/4187/3689.png', 'status': 200, 'bytes': 36969, 'referer': None, 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 313308, 'key': 'a713075f19bebc775e5bd2142533befb'}, {'time': 20150421123143, 'request': '/favicon.ico', 'status': 404, 'bytes': 279, 'referer': 'http://s.test.map5.nl/map/gast/tms/1.0.0/opentopo/EPSG28992/13/4187/3689.png', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 383, 'key': 'c9f87eb2b23df50405dc3c56b4fa206c'}]
[{'time': 20150421123333, 'request': '/map/gast/wmts', 'status': 500, 'bytes': 469, 'referer': None, 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 251096, 'key': 'c81ebd6e57b57f3e2cb7601020dba92e'}, {'time': 20150421123346, 'request': '/map/gast', 'status': 301, 'bytes': 297, 'referer': None, 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 240, 'key': 'b478500c42cee868ef3412cdcd8edd18'}, {'time': 20150421123354, 'request': '/map/gast/demo/', 'status': 200, 'bytes': 1912, 'referer': None, 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 309244, 'key': '3bb5447ae4fea97ecb8f3c4533a16cff'}, {'time': 20150421123354, 'request': '/map/gast/demo/static/logo.png', 'status': 200, 'bytes': 1368, 'referer': 'http://s.test.map5.nl/map/gast/demo/', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 93184, 'key': 'fe6b2a0eae0f127ace876ab4ce575974'}, {'time': 20150421123354, 'request': '/map/gast/demo/static/site.css', 'status': 200, 'bytes': 686, 'referer': 'http://s.test.map5.nl/map/gast/demo/', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 273346, 'key': '1269913ae3e14d5d50de22faced225d6'}, {'time': 20150421123400, 'request': '/map/gast/wmts/1.0.0/WMTSCapabilities.xml', 'status': 200, 'bytes': 20873, 'referer': None, 'agent': 'Python-urllib/2.7', 'deltat': 315229, 'key': 'a5e3f27196de18f34243f95b6458c336'}, {'time': 20150421123400, 'request': '/map/gast/demo/?wmts_capabilities', 'status': 200, 'bytes': 2522, 'referer': 'http://s.test.map5.nl/map/gast/demo/', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 623112, 'key': '40e71cbab8c6730cf3a775ccd4ae15d5'}, {'time': 20150421123401, 'request': '/map/gast/demo/static/site.css', 'status': 200, 'bytes': 686, 'referer': 'http://s.test.map5.nl/map/gast/demo/?wmts_capabilities', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 233173, 'key': '4f7c57f020b6799d73d197de93f0d171'}, {'time': 20150421123401, 'request': '/map/gast/demo/static/logo.png', 'status': 200, 'bytes': 1368, 'referer': 'http://s.test.map5.nl/map/gast/demo/?wmts_capabilities', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 219583, 'key': '65ab4672b9e0781515bc0bb528c61113'}, {'time': 20150421123416, 'request': '/map/gast/wmts/1.0.0/WMTSCapabilities.xml', 'status': 200, 'bytes': 2093, 'referer': 'http://s.test.map5.nl/map/gast/demo/', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 18173, 'key': '246ffee704fbe097d1402d3a1ed1219c'}]
[{'time': 20150421123420, 'request': '/map/gast/wmts/1.0.0', 'status': 500, 'bytes': 475, 'referer': None, 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 3407, 'key': '6280443cec1aeb5fef103018db2986f3'}, {'time': 20150421123447, 'request': '/map/gast/wmts/1.0.0?SERVICE=WMS&REQUEST=GetCapabilities', 'status': 500, 'bytes': 475, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 3203, 'key': '8c3590164c49c05c7a9b3d6234af6d9d'}, {'time': 20150421123447, 'request': '/map/gast/wmts/1.0.0?SERVICE=WMS&REQUEST=GetCapabilities', 'status': 500, 'bytes': 475, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 3017, 'key': '81aa1bf8abdd15d3d890bb9872e6c08d'}, {'time': 20150421123527, 'request': '/map/gast/wmts/1.0.0?service=WMTS&SERVICE=WMS&REQUEST=GetCapabilities', 'status': 500, 'bytes': 475, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 2807, 'key': 'e310e1cb5b13e0582a78fcf2868ec55e'}, {'time': 20150421123527, 'request': '/map/gast/wmts/1.0.0?service=WMTS&SERVICE=WMS&REQUEST=GetCapabilities', 'status': 500, 'bytes': 475, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 2838, 'key': '42e11e5c1970f448c14256bcd17da89a'}, {'time': 20150421123610, 'request': '/map/gast/service?REQUEST=GetCapabilities', 'status': 200, 'bytes': 11637, 'referer': 'http://s.test.map5.nl/map/gast/demo/', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 355693, 'key': '2958d227b88a685cc5b42a1190e3193e'}, {'time': 20150421123613, 'request': '/map/gast/service?REQUEST=GetCapabilities', 'status': 200, 'bytes': 11637, 'referer': None, 'agent': 'Python-urllib/2.7', 'deltat': 20349, 'key': '40f435dbe6a8e8a07c1057e32bc6abd8'}, {'time': 20150421123613, 'request': '/map/gast/demo/?wms_capabilities', 'status': 200, 'bytes': 2118, 'referer': 'http://s.test.map5.nl/map/gast/demo/', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 33616, 'key': '36ee1840512b1e1c403dddad2013866c'}, {'time': 20150421123613, 'request': '/map/gast/demo/static/site.css', 'status': 200, 'bytes': 686, 'referer': 'http://s.test.map5.nl/map/gast/demo/?wms_capabilities', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 11009, 'key': '944c43b2f9b543fd6fad1c3146784121'}, {'time': 20150421123613, 'request': '/map/gast/demo/static/logo.png', 'status': 200, 'bytes': 1368, 'referer': 'http://s.test.map5.nl/map/gast/demo/?wms_capabilities', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 548, 'key': '1c72a05fe738f1eafbeb8a2ddd73cb7d'}]
[{'time': 20150421123639, 'request': '/map/gast/service?SERVICE=WMS&REQUEST=GetCapabilities', 'status': 200, 'bytes': 11637, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 243456, 'key': 'c3cb6885b18a2ebbeda0bbd55c7de69c'}, {'time': 20150421123657, 'request': '/map/gast/service?SERVICE=WMS&REQUEST=GetCapabilities', 'status': 200, 'bytes': 11637, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 18184, 'key': '384d826747691d3d7fb6785c5d90000e'}, {'time': 20150421123657, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&SLD_VERSION=1.1.0&REQUEST=GetLegendGraphic&FORMAT=image/jpeg&LAYER=opentopo&STYLE=', 'status': 200, 'bytes': 299, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 23229, 'key': '472a83cd945bcdf8e500214596788c58'}, {'time': 20150421123657, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.88164117735196346,52.31994791109101328,4.89823868298099274,52.32472313490021776&SRS=EPSG:4326&WIDTH=2304&HEIGHT=663&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 435275, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 2497535, 'key': 'a7087b9f4e3893e0f816d9673ef33a4b'}, {'time': 20150421123831, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.88229860033138774,52.32140511929905102,4.89059794862468866,52.32379346153169308&SRS=EPSG:4326&WIDTH=2304&HEIGHT=663&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 303472, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 2524536, 'key': 'e097ff94711600a89c27aacd3837eec0'}, {'time': 20150421123835, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.88262727962318266,52.32213390486452909,4.88677710265483434,52.32332825857095315&SRS=EPSG:4326&WIDTH=2304&HEIGHT=663&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 211421, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 100590, 'key': 'bf871baf1c60e493b26563365c1d5437'}, {'time': 20150421123836, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.87973479282001321,52.32194070900506233,4.88388482393072909,52.32313536508878826&SRS=EPSG:4326&WIDTH=2303&HEIGHT=663&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 203168, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 733634, 'key': 'f569232c1cc8b044e5f5853c573c9ce9'}, {'time': 20150421123840, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.87937162596551133,52.32102294377313711,4.88767136038388816,52.32341189790105318&SRS=EPSG:4326&WIDTH=2304&HEIGHT=663&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 285902, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 720723, 'key': 'efb02c9c1d7433024abfe22c83466236'}, {'time': 20150421123842, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.87864515655996378,52.31919416543242818,4.89524331676138758,52.32397064165057543&SRS=EPSG:4326&WIDTH=2304&HEIGHT=663&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 415065, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 208428, 'key': 'dec22a8688dc93f17a397dd64d5c7cab'}, {'time': 20150421123843, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.87719189388992547,52.31554442593828469,4.91038298583838273,52.32509165098211668&SRS=EPSG:4326&WIDTH=2304&HEIGHT=663&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 533192, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 2053654, 'key': '79ecdee9ea0254e3c127cdad65a761ba'}]
[{'time': 20150421123846, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.87428421837786807,52.30826341961707726,4.94064551776737115,52.32733496592636868&SRS=EPSG:4326&WIDTH=2306&HEIGHT=663&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 682877, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 2593224, 'key': '42ba8b73064c6bd477cb18403c955c22'}, {'time': 20150421123849, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.86846485697270648,52.29372410561443019,5.0011039973744742,52.33177562740801392&SRS=EPSG:4326&WIDTH=2299&HEIGHT=659&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 844321, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 1725956, 'key': '50c379ca256661340dcdf0eacbd5228c'}, {'time': 20150421123853, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.8386881899267058,52.26824729178458995,5.10374475576453523,52.34410523064467924&SRS=EPSG:4326&WIDTH=2302&HEIGHT=659&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 812335, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 716366, 'key': '60d8ea6774bbcbe81103896f7a9a1f79'}, {'time': 20150421123855, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.77894557379025109,52.21751645706958556,5.30817506128564354,52.36825370247181155&SRS=EPSG:4326&WIDTH=2298&HEIGHT=655&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 779078, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 692476, 'key': 'fdab043d42ece6d9d17422e5a5ed81e5'}, {'time': 20150421123857, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.65903537607470053,52.11649001307762319,5.72053894950784159,52.41540823102885582&SRS=EPSG:4326&WIDTH=2309&HEIGHT=650&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 682860, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 695197, 'key': '2ee339900bdde19db73b3a81ffc1563d'}, {'time': 20150421123859, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.4167226914176565,51.91069625797302223,6.55825004706046322,52.51214626634031646&SRS=EPSG:4326&WIDTH=2320&HEIGHT=651&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 817945, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 591190, 'key': 'b3dae38a189c37222c68519091ee1ce1'}, {'time': 20150421123901, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=3.91960989940337212,51.47689466327312147,7.27517291177000036,52.7270589886328267&SRS=EPSG:4326&WIDTH=1819&HEIGHT=678&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 593483, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 287085, 'key': 'e7a61b0ca02c86f82d2d3d6f318640c5'}, {'time': 20150421123903, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=3.19733405078999988,50.67175914229999734,7.27517291177000036,53.22782022896856802&SRS=EPSG:4326&WIDTH=1106&HEIGHT=693&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 317587, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 198528, 'key': 'f40689e447bcd0790099cee1dc2e3a3c'}, {'time': 20150421123905, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=3.91960989940337212,51.47689466327312147,7.27517291177000036,52.7270589886328267&SRS=EPSG:4326&WIDTH=1819&HEIGHT=678&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 593483, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 441662, 'key': '8a5c7bd42c7508ba0ecdc64569d1db54'}, {'time': 20150421123906, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.41536394174170166,51.91072288572560467,6.5568903118917472,52.51213375315666809&SRS=EPSG:4326&WIDTH=2320&HEIGHT=651&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 816821, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 280547, 'key': '35795db3bccb94bf07c54c080eedad64'}]
[{'time': 20150421123906, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.65634629858872362,52.116047279264194,5.71784019987099157,52.41501733832054555&SRS=EPSG:4326&WIDTH=2308&HEIGHT=650&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 687988, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 1008772, 'key': '64439acf3e46f3a77291023cb2d5d390'}, {'time': 20150421123908, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.77526617288530009,52.21666243590728129,5.30452226852465358,52.36744868951445397&SRS=EPSG:4326&WIDTH=2298&HEIGHT=655&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 780735, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 252914, 'key': 'b30e4e0e48d7ec00d86dcbebeed01dce'}, {'time': 20150421123909, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.83418264422592525,52.26709043929363219,5.09925482811618025,52.34297845193199805&SRS=EPSG:4326&WIDTH=2301&HEIGHT=659&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 811840, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 1417207, 'key': 'ae4ee7e29cbfab46fc2de968f41cec69'}, {'time': 20150421123911, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.86354731013050845,52.29241753793147041,4.99619483822194965,52.33048548888342566&SRS=EPSG:4326&WIDTH=2298&HEIGHT=659&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 847725, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 390434, 'key': '9ab54eaeb7b45e684cff8aac3701ae7e'}, {'time': 20150421123926, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.7983907345342578,52.30068851058355506,4.9312260836665196,52.33897414157453909&SRS=EPSG:4326&WIDTH=2311&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 787450, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 563186, 'key': 'ed23b4a7e23082467d297a4cf480a383'}, {'time': 20150421123930, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.82507774754855934,52.31044365558483378,4.89150389391215157,52.32959746344092622&SRS=EPSG:4326&WIDTH=2311&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 688485, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 927171, 'key': 'c8e3b28333546d94dbaf42ac14790b89'}, {'time': 20150421123932, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.83838815624467333,52.31532167233618935,4.87160336391397841,52.32490134373566093&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 628432, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 440856, 'key': '0eae21d76aa865a6dc5f8faeef37e9ca'}, {'time': 20150421123936, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.84504031284738623,52.31776082437207975,4.86164845074635377,52.32255135217919673&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 486076, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 1516336, 'key': '641d29c55da009f8fc0cb576a4957ef2'}, {'time': 20150421123940, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.848365629293232,52.31898043640777018,4.85666983181408707,52.32137587336808338&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 282828, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 1670260, 'key': 'dd9204535fb6519ad3c1ab52d6fd7c6b'}, {'time': 20150421123943, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.85002809706240523,52.31959025144288944,4.85418023172258284,52.32078801319095618&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 194466, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 215961, 'key': '00174d6069605a259e981d32e5693cc4'}]
[{'time': 20150421123945, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.85085928333482297,52.31989516121636541,4.8529353590157136,52.32049405290776178&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 160121, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 96065, 'key': 'b2b875a12dc9f84cd1a15808a2770642'}, {'time': 20150421123946, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.8512748645681425,52.32004761666721748,4.85231290449639907,52.3203470652173479&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 123241, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 390538, 'key': 'e4ee311694bc8ccff2c03d01ed20b505'}, {'time': 20150421124002, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.85093093342004078,52.31990548311836164,4.85300700678140018,52.32050437106456542&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 157238, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 147369, 'key': '81cd0aa96263882a66dd75e80a8ffb39'}, {'time': 20150421124003, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.85024305101700559,52.31962122226092049,4.85439517176004642,52.32081896153741951&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 199468, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 109193, 'key': '396264f0d5af44c57fca605d05a912f4'}, {'time': 20150421124004, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.84886720578289587,52.31905272550537234,4.8571713433574466,52.32144805759834583&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 300113, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 218693, 'key': '69111071cde61dd567de8ed0c5225a03'}, {'time': 20150421124005, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.84611519359641374,52.3179158318183184,4.86272305315710884,52.32270591019437944&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 489524, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 266274, 'key': '5c95ee33232301ed9d3c9e760d10682b'}, {'time': 20150421124006, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.84060980355999337,52.31564884059808662,4.87382386563584902,52.32522665442184007&SRS=EPSG:4326&WIDTH=2310&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 634317, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 268617, 'key': 'd306a68550d38971a3c18df20b507c88'}, {'time': 20150421124007, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.82961476217944696,52.31111656397721532,4.89603623584240832,52.33026278690169875&SRS=EPSG:4326&WIDTH=2311&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 696250, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 257901, 'key': '6fe96192df9dfe49f046bab41c2fd784'}, {'time': 20150421124009, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.85319246456894948,52.32761554091926115,4.91960915414784417,52.34672235725444267&SRS=EPSG:4326&WIDTH=2305&HEIGHT=663&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 750968, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 1808540, 'key': '7fb50072ed919d6b5c704e8f51cdc901'}, {'time': 20150421124512, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 500, 'bytes': 602, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 466396, 'key': 'e071dd1f5fff22baf1c74fd67e8218c8'}]
[{'time': 20150421124530, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 500, 'bytes': 602, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 1937, 'key': '3fc2779d18d89281610f3909fd10eb9c'}, {'time': 20150421124607, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 500, 'bytes': 602, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 288315, 'key': '6e3aa859d7a2266f6069df276d6c42cb'}, {'time': 20150421124759, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 331806, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 549090, 'key': 'd08cebca97d5f654b49c952b8ff44072'}, {'time': 20150421124803, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 334352, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 333467, 'key': 'e78feb50d1d9a5e0c0e7d35a2ef9b067'}, {'time': 20150421124805, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 331806, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 352004, 'key': '7fabd8ebb12bbf38f108f01b770009c3'}, {'time': 20150421124808, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 331806, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 115182, 'key': '8c9de89621b623da59284f897e7d1f49'}, {'time': 20150421124810, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 331806, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 115765, 'key': '509962636ac252e3d6fa376e97d984d4'}, {'time': 20150421124811, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 331806, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 119957, 'key': '7b7e3cd94834c0e443fdeffb97b8a5ff'}, {'time': 20150421124813, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 331806, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 363011, 'key': '13db62066ea7da96759af80d2b5b96fb'}, {'time': 20150421124815, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 331806, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 386568, 'key': '46bf084dd695bb157f801a6a4b8aa51e'}]
[{'time': 20150421124818, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 334352, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 365184, 'key': '3b5aebf0135fced85af5740e8c10e21c'}, {'time': 20150421124819, 'request': '/favicon.ico', 'status': 404, 'bytes': 279, 'referer': 'http://s.test.map5.nl/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 102, 'key': 'd09b23b15fc8afdad0fa44b5ac7277f6'}, {'time': 20150421124824, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.83005370038209136,52.33939510971103459,4.89651704885155681,52.35854062445694979&SRS=EPSG:4326&WIDTH=2313&HEIGHT=666&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 791655, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 1757049, 'key': '2581e096d90bc840f05895dca4b51c2e'}, {'time': 20150421124828, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.79175980191256379,52.34824612602871241,4.85828446955923443,52.36745569430535596&SRS=EPSG:4326&WIDTH=2309&HEIGHT=667&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 749230, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 1933968, 'key': '8206b19abb899ee47155ddf9eaaeab6f'}, {'time': 20150421124833, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.77385759552589573,52.35751052638513414,4.84041867055299946,52.37675005343851353&SRS=EPSG:4326&WIDTH=2308&HEIGHT=667&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 707773, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 2185241, 'key': '79442a1a17486347cde28cbed8674d34'}, {'time': 20150421124839, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.77125456138848403,52.37023903120333301,4.83783806710879727,52.3894829312327488&SRS=EPSG:4326&WIDTH=2309&HEIGHT=667&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 718675, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 1532564, 'key': '043403e16ef23c168fcc45aa13b62129'}, {'time': 20150421124843, 'request': '/map/gast/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=4.76145165848030949,52.37107784519862719,4.82804874484703994,52.39033814774672493&SRS=EPSG:4326&WIDTH=2308&HEIGHT=667&LAYERS=opentopo&STYLES=&FORMAT=image/jpeg&DPI=72&MAP_RESOLUTION=72&FORMAT_OPTIONS=dpi:72', 'status': 200, 'bytes': 699224, 'referer': None, 'agent': 'Mozilla/5.0 QGIS/2.2.0-Valmiera', 'deltat': 1265574, 'key': '33db4f80078e75fd3153da085a4f8a02'}, {'time': 20150421124910, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 334352, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 486046, 'key': '50581490a43cd0a1505f283ad25263cc'}, {'time': 20150421124914, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 331806, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 376900, 'key': 'd9054c397c8f9a201c0c7ba21a86b29a'}, {'time': 20150421124914, 'request': '/favicon.ico', 'status': 404, 'bytes': 279, 'referer': 'http://s.test.map5.nl/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 365, 'key': 'a46a7dca0a22a96173a629f1e402c50f'}]2023-01-09 14:54:29,476 fileinput INFO EOF file
2023-01-09 14:54:29,476 fileinput INFO EOF file list
2023-01-09 14:54:29,476 component INFO ApacheLogFileInput invokes=112 time(total, min, max, avg) = 0.003 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,476 component INFO FormatConverter invokes=112 time(total, min, max, avg) = 0.001 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,476 component INFO StandardOutput invokes=112 time(total, min, max, avg) = 0.001 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,476 chain INFO DONE - 112 rounds - chain=input_apache_log|to_record_array|output_std 
2023-01-09 14:54:29,477 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:29,477 ETL INFO ALL DONE

[{'time': 20150421124916, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 334352, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 340430, 'key': '87ff75f499f763a2961cf548948ef352'}, {'time': 20150421124916, 'request': '/favicon.ico', 'status': 404, 'bytes': 279, 'referer': 'http://s.test.map5.nl/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 378, 'key': '6a83dc1a105390e1008e7192bbe5a1be'}, {'time': 20150421124917, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 334352, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 370053, 'key': '31f6b28a33aeaa15869d3d59c268689a'}, {'time': 20150421124918, 'request': '/favicon.ico', 'status': 404, 'bytes': 279, 'referer': 'http://s.test.map5.nl/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 379, 'key': '4ccdcbed272c57ca281962a7a6ae016e'}, {'time': 20150421124919, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 334352, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 332777, 'key': 'c997cf43a1f5aebc5ad3927476ba05d3'}, {'time': 20150421124920, 'request': '/favicon.ico', 'status': 404, 'bytes': 279, 'referer': 'http://s.test.map5.nl/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 144, 'key': 'd0e0eadef74800211ed54589819bf8c6'}, {'time': 20150421124921, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 334352, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 109812, 'key': '5ae1a1c1833b39fb87341f93e1e4c599'}, {'time': 20150421124921, 'request': '/favicon.ico', 'status': 404, 'bytes': 279, 'referer': 'http://s.test.map5.nl/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 346, 'key': '58f8953967caa07f410268ba78cfbb6b'}, {'time': 20150421124922, 'request': '/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'status': 200, 'bytes': 331806, 'referer': 'http://s.test.map5.nl/map/gast/demo/?srs=EPSG%3A4326&format=image%2Fpng&wms_layer=opentopo', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 110987, 'key': '65a58d40b7c036dea544864e62aa7201'}, {'time': 20150421124923, 'request': '/favicon.ico', 'status': 404, 'bytes': 279, 'referer': 'http://s.test.map5.nl/map/gast/service?LAYERS=opentopo&FORMAT=image%2Fpng&SRS=EPSG%3A4326&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&TRANSPARENT=TRUE&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&BBOX=3.1235377115391,50.892941613156,5.4511713191977,52.087620966958&WIDTH=1169&HEIGHT=600', 'agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36', 'deltat': 478, 'key': '8f0db52735a42b970a136e905ec68cec'}]
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/15_splitter ~/project/stetl/git/examples/basics
==== running etl.sh for 15_splitter ====
2023-01-09 14:54:29,766 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:29,807 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:29,820 main INFO Stetl version = 2.1
2023-01-09 14:54:29,820 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:29,821 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/15_splitter
2023-01-09 14:54:29,821 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:29,822 ETL INFO START
2023-01-09 14:54:29,822 util INFO Timer start: total ETL
2023-01-09 14:54:29,822 chain INFO Assembling Chain: input_xml_file|transformer_xslt|(output_file)(output_std)...
2023-01-09 14:54:29,834 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.xml'}
2023-01-09 14:54:29,835 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:29,838 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/gmlcities.gml'}
2023-01-09 14:54:29,838 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/15_splitter
2023-01-09 14:54:29,839 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardOutput'}
2023-01-09 14:54:29,839 chain INFO Running Chain: input_xml_file|transformer_xslt|(output_file)(output_std)
2023-01-09 14:54:29,839 fileinput INFO Read/parse for start for file=input/cities.xml....
2023-01-09 14:54:29,839 fileinput INFO Read/parse ok for file=input/cities.xml
2023-01-09 14:54:29,839 fileinput INFO all files done
2023-01-09 14:54:29,840 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:29,840 fileoutput INFO writing to file output/gmlcities.gml
2023-01-09 14:54:29,840 fileoutput INFO written to output/gmlcities.gml
2023-01-09 14:54:29,840 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,840 component INFO XsltFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,840 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,840 component INFO StandardOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,840 chain INFO DONE - 1 rounds - chain=input_xml_file|transformer_xslt|(output_file)(output_std) 
2023-01-09 14:54:29,840 chain INFO Assembling Chain: input_xml_file |(transformer_xslt|output_file) (output_std) (transformer_xslt|output_std)...
2023-01-09 14:54:29,841 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.xml'}
2023-01-09 14:54:29,841 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:29,841 chain INFO Assembling Chain: transformer_xslt|output_file...
2023-01-09 14:54:29,841 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/gmlcities.gml'}
2023-01-09 14:54:29,841 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/15_splitter
2023-01-09 14:54:29,842 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardOutput'}
2023-01-09 14:54:29,842 chain INFO Assembling Chain: transformer_xslt|output_std...
2023-01-09 14:54:29,842 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardOutput'}
2023-01-09 14:54:29,842 chain INFO Running Chain: input_xml_file |(transformer_xslt|output_file) (output_std) (transformer_xslt|output_std)
2023-01-09 14:54:29,842 fileinput INFO Read/parse for start for file=input/cities.xml....
2023-01-09 14:54:29,842 fileinput INFO Read/parse ok for file=input/cities.xml
2023-01-09 14:54:29,843 fileinput INFO all files done
2023-01-09 14:54:29,843 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:29,843 fileoutput INFO writing to file output/gmlcities.gml
2023-01-09 14:54:29,843 fileoutput INFO written to output/gmlcities.gml
2023-01-09 14:54:29,843 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:29,843 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,843 component INFO XsltFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,843 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,844 component INFO StandardOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,844 component INFO XsltFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,844 component INFO StandardOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:29,844 chain INFO DONE - 1 rounds - chain=input_xml_file |(transformer_xslt|output_file) (output_std) (transformer_xslt|output_std) 
2023-01-09 14:54:29,844 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:29,844 ETL INFO ALL DONE
<?xml version='1.0' encoding='utf-8'?>
<ogr:FeatureCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ogr="http://ogr.maptools.org/" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://ogr.maptools.org/ ../gmlcities.xsd  http://www.opengis.net/gml http://schemas.opengis.net/gml/2.1.2/feature.xsd">
  <gml:boundedBy>
    <gml:Box>
      <gml:coord>
        <gml:X>-180.0</gml:X>
        <gml:Y>-90.0</gml:Y>
      </gml:coord>
      <gml:coord>
        <gml:X>180.0</gml:X>
        <gml:Y>90.0</gml:Y>
      </gml:coord>
    </gml:Box>
  </gml:boundedBy>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Amsterdam</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>52.4,4.9</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Bonn</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>50.7,7.1</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Rome</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>41.9,12.5</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
</ogr:FeatureCollection>

<?xml version='1.0' encoding='utf-8'?>
<cities>
  <city>
    <name>Amsterdam</name>
    <lat>52.4</lat>
    <lon>4.9</lon>
  </city>
  <city>
    <name>Bonn</name>
    <lat>50.7</lat>
    <lon>7.1</lon>
  </city>
  <city>
    <name>Rome</name>
    <lat>41.9</lat>
    <lon>12.5</lon>
  </city>
</cities>

<?xml version='1.0' encoding='utf-8'?>
<ogr:FeatureCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ogr="http://ogr.maptools.org/" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://ogr.maptools.org/ ../gmlcities.xsd  http://www.opengis.net/gml http://schemas.opengis.net/gml/2.1.2/feature.xsd">
  <gml:boundedBy>
    <gml:Box>
      <gml:coord>
        <gml:X>-180.0</gml:X>
        <gml:Y>-90.0</gml:Y>
      </gml:coord>
      <gml:coord>
        <gml:X>180.0</gml:X>
        <gml:Y>90.0</gml:Y>
      </gml:coord>
    </gml:Box>
  </gml:boundedBy>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Amsterdam</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>52.4,4.9</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Bonn</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>50.7,7.1</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Rome</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>41.9,12.5</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
</ogr:FeatureCollection>

~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/16_merger ~/project/stetl/git/examples/basics
==== running etl.sh for 16_merger ====
2023-01-09 14:54:30,133 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:30,175 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:30,186 main INFO Stetl version = 2.1
2023-01-09 14:54:30,187 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:30,187 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/16_merger
2023-01-09 14:54:30,187 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:30,188 ETL INFO START
2023-01-09 14:54:30,188 util INFO Timer start: total ETL
2023-01-09 14:54:30,188 chain INFO Assembling Chain: (input_1) (input_2)|transformer_xslt|output_std...
2023-01-09 14:54:30,200 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input1/cities.xml'}
2023-01-09 14:54:30,200 fileinput INFO file_list=['input1/cities.xml']
2023-01-09 14:54:30,200 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input2/cities.xml'}
2023-01-09 14:54:30,200 fileinput INFO file_list=['input2/cities.xml']
2023-01-09 14:54:30,203 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardOutput'}
2023-01-09 14:54:30,203 chain INFO Running Chain: (input_1) (input_2)|transformer_xslt|output_std
2023-01-09 14:54:30,203 fileinput INFO Read/parse for start for file=input1/cities.xml....
2023-01-09 14:54:30,204 fileinput INFO Read/parse ok for file=input1/cities.xml
2023-01-09 14:54:30,204 fileinput INFO all files done
2023-01-09 14:54:30,204 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:30,204 fileinput INFO Read/parse for start for file=input2/cities.xml....
2023-01-09 14:54:30,204 fileinput INFO Read/parse ok for file=input2/cities.xml
2023-01-09 14:54:30,204 fileinput INFO all files done
2023-01-09 14:54:30,204 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:30,205 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,205 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,205 component INFO XsltFilter invokes=2 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,205 component INFO StandardOutput invokes=2 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,205 chain INFO DONE - 1 rounds - chain=(input_1) (input_2)|transformer_xslt|output_std 
2023-01-09 14:54:30,205 chain INFO Assembling Chain: (input_1) (input_2)|transformer_xslt|(output_file)(output_std)...
2023-01-09 14:54:30,205 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input1/cities.xml'}
2023-01-09 14:54:30,205 fileinput INFO file_list=['input1/cities.xml']
2023-01-09 14:54:30,205 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input2/cities.xml'}
2023-01-09 14:54:30,205 fileinput INFO file_list=['input2/cities.xml']
2023-01-09 14:54:30,207 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/gmlcities.gml'}
2023-01-09 14:54:30,207 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/16_merger
2023-01-09 14:54:30,207 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardOutput'}
2023-01-09 14:54:30,207 chain INFO Running Chain: (input_1) (input_2)|transformer_xslt|(output_file)(output_std)
2023-01-09 14:54:30,207 fileinput INFO Read/parse for start for file=input1/cities.xml....
2023-01-09 14:54:30,207 fileinput INFO Read/parse ok for file=input1/cities.xml
2023-01-09 14:54:30,207 fileinput INFO all files done
2023-01-09 14:54:30,207 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:30,207 fileoutput INFO writing to file output/gmlcities.gml
2023-01-09 14:54:30,208 fileoutput INFO written to output/gmlcities.gml
2023-01-09 14:54:30,208 fileinput INFO Read/parse for start for file=input2/cities.xml....
2023-01-09 14:54:30,208 fileinput INFO Read/parse ok for file=input2/cities.xml
2023-01-09 14:54:30,208 fileinput INFO all files done
2023-01-09 14:54:30,208 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:30,208 fileoutput INFO writing to file output/gmlcities.gml
2023-01-09 14:54:30,209 fileoutput INFO written to output/gmlcities.gml
2023-01-09 14:54:30,209 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,209 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,209 component INFO XsltFilter invokes=2 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,209 component INFO FileOutput invokes=2 time(total, min, max, avg) = 0.001 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,209 component INFO StandardOutput invokes=2 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,209 chain INFO DONE - 1 rounds - chain=(input_1) (input_2)|transformer_xslt|(output_file)(output_std) 
2023-01-09 14:54:30,209 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:30,209 ETL INFO ALL DONE
<?xml version='1.0' encoding='utf-8'?>
<ogr:FeatureCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ogr="http://ogr.maptools.org/" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://ogr.maptools.org/ ../gmlcities.xsd  http://www.opengis.net/gml http://schemas.opengis.net/gml/2.1.2/feature.xsd">
  <gml:boundedBy>
    <gml:Box>
      <gml:coord>
        <gml:X>-180.0</gml:X>
        <gml:Y>-90.0</gml:Y>
      </gml:coord>
      <gml:coord>
        <gml:X>180.0</gml:X>
        <gml:Y>90.0</gml:Y>
      </gml:coord>
    </gml:Box>
  </gml:boundedBy>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Amsterdam</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>52.4,4.9</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Bonn</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>50.7,7.1</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Rome</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>41.9,12.5</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
</ogr:FeatureCollection>

<?xml version='1.0' encoding='utf-8'?>
<ogr:FeatureCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ogr="http://ogr.maptools.org/" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://ogr.maptools.org/ ../gmlcities.xsd  http://www.opengis.net/gml http://schemas.opengis.net/gml/2.1.2/feature.xsd">
  <gml:boundedBy>
    <gml:Box>
      <gml:coord>
        <gml:X>-180.0</gml:X>
        <gml:Y>-90.0</gml:Y>
      </gml:coord>
      <gml:coord>
        <gml:X>180.0</gml:X>
        <gml:Y>90.0</gml:Y>
      </gml:coord>
    </gml:Box>
  </gml:boundedBy>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Amsterdam</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>52.4,4.9</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Bonn</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>50.7,7.1</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Rome</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>41.9,12.5</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
</ogr:FeatureCollection>

<?xml version='1.0' encoding='utf-8'?>
<ogr:FeatureCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ogr="http://ogr.maptools.org/" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://ogr.maptools.org/ ../gmlcities.xsd  http://www.opengis.net/gml http://schemas.opengis.net/gml/2.1.2/feature.xsd">
  <gml:boundedBy>
    <gml:Box>
      <gml:coord>
        <gml:X>-180.0</gml:X>
        <gml:Y>-90.0</gml:Y>
      </gml:coord>
      <gml:coord>
        <gml:X>180.0</gml:X>
        <gml:Y>90.0</gml:Y>
      </gml:coord>
    </gml:Box>
  </gml:boundedBy>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Amsterdam</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>52.4,4.9</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Bonn</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>50.7,7.1</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Rome</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>41.9,12.5</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
</ogr:FeatureCollection>

<?xml version='1.0' encoding='utf-8'?>
<ogr:FeatureCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ogr="http://ogr.maptools.org/" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://ogr.maptools.org/ ../gmlcities.xsd  http://www.opengis.net/gml http://schemas.opengis.net/gml/2.1.2/feature.xsd">
  <gml:boundedBy>
    <gml:Box>
      <gml:coord>
        <gml:X>-180.0</gml:X>
        <gml:Y>-90.0</gml:Y>
      </gml:coord>
      <gml:coord>
        <gml:X>180.0</gml:X>
        <gml:Y>90.0</gml:Y>
      </gml:coord>
    </gml:Box>
  </gml:boundedBy>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Amsterdam</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>52.4,4.9</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Bonn</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>50.7,7.1</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Rome</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>41.9,12.5</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
</ogr:FeatureCollection>

~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/17_sieve ~/project/stetl/git/examples/basics
==== running etl.sh for 17_sieve ====
2023-01-09 14:54:30,514 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:30,556 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:30,568 main INFO Stetl version = 2.1
2023-01-09 14:54:30,569 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:30,569 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/17_sieve
2023-01-09 14:54:30,570 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:30,570 ETL INFO START
2023-01-09 14:54:30,570 util INFO Timer start: total ETL
2023-01-09 14:54:30,570 chain INFO Assembling Chain: input_csv|attr_value_sieve|output_std...
2023-01-09 14:54:30,582 input INFO cfg = {'class': 'stetl.inputs.fileinput.CsvFileInput', 'file_path': 'input/cities.csv', 'output_format': 'record_array'}
2023-01-09 14:54:30,582 fileinput INFO file_list=['input/cities.csv']
2023-01-09 14:54:30,585 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardOutput'}
2023-01-09 14:54:30,585 chain INFO Running Chain: input_csv|attr_value_sieve|output_std
2023-01-09 14:54:30,585 fileinput INFO Open CSV file: input/cities.csv
2023-01-09 14:54:30,586 component INFO CsvFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,586 component INFO AttrValueRecordSieve invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,586 component INFO StandardOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,586 chain INFO DONE - 1 rounds - chain=input_csv|attr_value_sieve|output_std 
2023-01-09 14:54:30,586 chain INFO Assembling Chain: input_csv|attr_value_sieve|output_file...
2023-01-09 14:54:30,586 input INFO cfg = {'class': 'stetl.inputs.fileinput.CsvFileInput', 'file_path': 'input/cities.csv', 'output_format': 'record_array'}
2023-01-09 14:54:30,586 fileinput INFO file_list=['input/cities.csv']
2023-01-09 14:54:30,587 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/cities_sieved.txt'}
2023-01-09 14:54:30,587 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/17_sieve
2023-01-09 14:54:30,587 chain INFO Running Chain: input_csv|attr_value_sieve|output_file
2023-01-09 14:54:30,587 fileinput INFO Open CSV file: input/cities.csv
2023-01-09 14:54:30,588 fileoutput INFO writing to file output/cities_sieved.txt
2023-01-09 14:54:30,588 fileoutput INFO written to output/cities_sieved.txt
2023-01-09 14:54:30,588 component INFO CsvFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,588 component INFO AttrValueRecordSieve invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,588 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,588 chain INFO DONE - 1 rounds - chain=input_csv|attr_value_sieve|output_file 
2023-01-09 14:54:30,588 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:30,588 ETL INFO ALL DONE
[{'city': 'amsterdam', 'lat': '52.4', 'lon': '4.9'}, {'city': 'otterlo', 'lat': '52.101', 'lon': '5.773'}]
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/1_copystd ~/project/stetl/git/examples/basics
==== running etl.sh for 1_copystd ====
2023-01-09 14:54:30,873 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:30,914 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:30,925 main INFO Stetl version = 2.1
2023-01-09 14:54:30,926 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:30,926 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/1_copystd
2023-01-09 14:54:30,927 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:30,927 ETL INFO START
2023-01-09 14:54:30,927 util INFO Timer start: total ETL
2023-01-09 14:54:30,927 chain INFO Assembling Chain: input_xml_file|output_std...
2023-01-09 14:54:30,940 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.xml'}
2023-01-09 14:54:30,940 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:30,941 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardXmlOutput'}
2023-01-09 14:54:30,941 chain INFO Running Chain: input_xml_file|output_std
2023-01-09 14:54:30,941 fileinput INFO Read/parse for start for file=input/cities.xml....
2023-01-09 14:54:30,942 fileinput INFO Read/parse ok for file=input/cities.xml
2023-01-09 14:54:30,942 fileinput INFO all files done
2023-01-09 14:54:30,942 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:30,942 component INFO StandardXmlOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:30,942 chain INFO DONE - 1 rounds - chain=input_xml_file|output_std 
2023-01-09 14:54:30,942 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:30,942 ETL INFO ALL DONE
<?xml version='1.0' encoding='utf-8'?>
<cities>
    <city>
        <name>Amsterdam</name>
        <lat>52.4</lat>
        <lon>4.9</lon>
    </city>
    <city>
        <name>Bonn</name>
        <lat>50.7</lat>
        <lon>7.1</lon>
    </city>
    <city>
        <name>Rome</name>
        <lat>41.9</lat>
        <lon>12.5</lon>
    </city>
</cities>

~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/2_xslt ~/project/stetl/git/examples/basics
==== running etl.sh for 2_xslt ====
2023-01-09 14:54:31,229 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:31,271 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:31,282 main INFO Stetl version = 2.1
2023-01-09 14:54:31,283 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:31,283 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/2_xslt
2023-01-09 14:54:31,283 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:31,284 ETL INFO START
2023-01-09 14:54:31,284 util INFO Timer start: total ETL
2023-01-09 14:54:31,284 chain INFO Assembling Chain: input_xml_file|transformer_xslt|output_file...
2023-01-09 14:54:31,296 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.xml'}
2023-01-09 14:54:31,296 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:31,300 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/gmlcities.gml'}
2023-01-09 14:54:31,300 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/2_xslt
2023-01-09 14:54:31,300 chain INFO Running Chain: input_xml_file|transformer_xslt|output_file
2023-01-09 14:54:31,300 fileinput INFO Read/parse for start for file=input/cities.xml....
2023-01-09 14:54:31,300 fileinput INFO Read/parse ok for file=input/cities.xml
2023-01-09 14:54:31,300 fileinput INFO all files done
2023-01-09 14:54:31,300 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:31,300 fileoutput INFO writing to file output/gmlcities.gml
2023-01-09 14:54:31,301 fileoutput INFO written to output/gmlcities.gml
2023-01-09 14:54:31,301 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:31,301 component INFO XsltFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:31,301 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:31,301 chain INFO DONE - 1 rounds - chain=input_xml_file|transformer_xslt|output_file 
2023-01-09 14:54:31,301 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:31,301 ETL INFO ALL DONE
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/3_shape ~/project/stetl/git/examples/basics
==== running etl.sh for 3_shape ====
2023-01-09 14:54:31,631 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:31,672 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:31,684 main INFO Stetl version = 2.1
2023-01-09 14:54:31,684 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:31,685 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/3_shape
2023-01-09 14:54:31,685 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:31,685 ETL INFO START
2023-01-09 14:54:31,685 util INFO Timer start: total ETL
2023-01-09 14:54:31,686 chain INFO Assembling Chain: input_xml_file|transformer_xslt|output_ogr_shape...
2023-01-09 14:54:31,697 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.xml'}
2023-01-09 14:54:31,698 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:31,703 output INFO cfg = {'class': 'stetl.outputs.ogroutput.Ogr2OgrOutput', 'temp_file': 'temp/gmlcities.gml', 'ogr2ogr_cmd': 'ogr2ogr\n-overwrite\n-f "ESRI Shapefile"\n-a_srs epsg:4326\noutput/gmlcities.shp\ntemp/gmlcities.gml'}
2023-01-09 14:54:31,704 chain INFO Running Chain: input_xml_file|transformer_xslt|output_ogr_shape
2023-01-09 14:54:31,704 fileinput INFO Read/parse for start for file=input/cities.xml....
2023-01-09 14:54:31,704 fileinput INFO Read/parse ok for file=input/cities.xml
2023-01-09 14:54:31,704 fileinput INFO all files done
2023-01-09 14:54:31,705 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:31,705 ogroutput INFO writing to file temp/gmlcities.gml
2023-01-09 14:54:31,705 ogroutput INFO written to temp/gmlcities.gml
2023-01-09 14:54:31,705 ogroutput INFO executing cmd=ogr2ogr -overwrite -f "ESRI Shapefile" -a_srs epsg:4326 output/gmlcities.shp temp/gmlcities.gml
2023-01-09 14:54:31,752 ogroutput INFO execute done
2023-01-09 14:54:31,752 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:31,752 component INFO XsltFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:31,752 component INFO Ogr2OgrOutput invokes=1 time(total, min, max, avg) = 0.047 0.047 0.047 0.047
2023-01-09 14:54:31,752 chain INFO DONE - 1 rounds - chain=input_xml_file|transformer_xslt|output_ogr_shape 
2023-01-09 14:54:31,752 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:31,752 ETL INFO ALL DONE
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/4_validate ~/project/stetl/git/examples/basics
==== running etl.sh for 4_validate ====
2023-01-09 14:54:32,066 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:32,114 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:32,130 main INFO Stetl version = 2.1
2023-01-09 14:54:32,132 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:32,132 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/4_validate
2023-01-09 14:54:32,132 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:32,133 ETL INFO START
2023-01-09 14:54:32,133 util INFO Timer start: total ETL
2023-01-09 14:54:32,133 chain INFO Assembling Chain: input_xml_file|transformer_xslt|xml_schema_validator|output_file...
2023-01-09 14:54:32,146 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.xml'}
2023-01-09 14:54:32,146 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:32,149 xmlvalidator INFO Building the Schema once with (GML XSD) dependencies for schema=gmlcities.xsd (be patient...)
2023-01-09 14:54:33,814 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/gmlcities.gml'}
2023-01-09 14:54:33,814 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/4_validate
2023-01-09 14:54:33,814 chain INFO Running Chain: input_xml_file|transformer_xslt|xml_schema_validator|output_file
2023-01-09 14:54:33,814 fileinput INFO Read/parse for start for file=input/cities.xml....
2023-01-09 14:54:33,815 fileinput INFO Read/parse ok for file=input/cities.xml
2023-01-09 14:54:33,815 fileinput INFO all files done
2023-01-09 14:54:33,815 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:33,815 xmlvalidator INFO Validating doc against schema=gmlcities.xsd ...
2023-01-09 14:54:33,815 xmlvalidator INFO Validation result: True
2023-01-09 14:54:33,815 fileoutput INFO writing to file output/gmlcities.gml
2023-01-09 14:54:33,816 fileoutput INFO written to output/gmlcities.gml
2023-01-09 14:54:33,816 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:33,816 component INFO XsltFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:33,816 component INFO XmlSchemaValidator invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:33,816 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:33,816 chain INFO DONE - 1 rounds - chain=input_xml_file|transformer_xslt|xml_schema_validator|output_file 
2023-01-09 14:54:33,816 util INFO Timer end: total ETL time=2.0 sec
2023-01-09 14:54:33,816 ETL INFO ALL DONE
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/5_split ~/project/stetl/git/examples/basics
==== running etl.sh for 5_split ====
2023-01-09 14:54:34,133 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:34,179 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:34,193 main INFO Stetl version = 2.1
2023-01-09 14:54:34,194 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:34,194 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/5_split
2023-01-09 14:54:34,194 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:34,195 ETL INFO START
2023-01-09 14:54:34,195 util INFO Timer start: total ETL
2023-01-09 14:54:34,195 chain INFO Assembling Chain: input_big_xml_file|xml_assembler|transformer_xslt|multi_output_file...
2023-01-09 14:54:34,208 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlElementStreamerFileInput', 'file_path': 'input', 'element_tags': 'city'}
2023-01-09 14:54:34,208 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:34,208 fileinput INFO Element tags to be matched: ['city']
2023-01-09 14:54:34,210 xmlassembler INFO cfg = {'class': 'stetl.filters.xmlassembler.XmlAssembler', 'max_elements': '2', 'container_doc': "<?xml version='1.0' encoding='utf-8'?>\n<cities>\n</cities>", 'element_container_tag': 'cities'}
2023-01-09 14:54:34,213 output INFO cfg = {'class': 'stetl.outputs.fileoutput.MultiFileOutput', 'file_path': 'output/gmlcities-%03d.gml'}
2023-01-09 14:54:34,213 chain INFO Running Chain: input_big_xml_file|xml_assembler|transformer_xslt|multi_output_file
2023-01-09 14:54:34,213 fileinput INFO file opened : input/cities.xml
2023-01-09 14:54:34,214 xmlassembler INFO xmldoc ready: elms=2 total_elms=2
2023-01-09 14:54:34,214 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:34,214 fileoutput INFO writing to file output/gmlcities-001.gml
2023-01-09 14:54:34,214 fileoutput INFO written to output/gmlcities-001.gml
2023-01-09 14:54:34,215 fileinput INFO End of doc: input/cities.xml elem_count=3
2023-01-09 14:54:34,215 fileinput INFO End of stream
2023-01-09 14:54:34,215 xmlassembler INFO xmldoc ready: elms=1 total_elms=3
2023-01-09 14:54:34,215 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:34,215 fileoutput INFO writing to file output/gmlcities-002.gml
2023-01-09 14:54:34,215 fileoutput INFO written to output/gmlcities-002.gml
2023-01-09 14:54:34,215 component INFO XmlElementStreamerFileInput invokes=26 time(total, min, max, avg) = 0.001 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:34,216 component INFO XmlAssembler invokes=26 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:34,216 component INFO XsltFilter invokes=26 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:34,216 component INFO MultiFileOutput invokes=26 time(total, min, max, avg) = 0.001 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:34,216 chain INFO DONE - 26 rounds - chain=input_big_xml_file|xml_assembler|transformer_xslt|multi_output_file 
2023-01-09 14:54:34,216 chain INFO Assembling Chain: input_big_xml_file|xml_assembler|transformer_xslt|output_std...
2023-01-09 14:54:34,216 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlElementStreamerFileInput', 'file_path': 'input', 'element_tags': 'city'}
2023-01-09 14:54:34,216 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:34,216 fileinput INFO Element tags to be matched: ['city']
2023-01-09 14:54:34,216 xmlassembler INFO cfg = {'class': 'stetl.filters.xmlassembler.XmlAssembler', 'max_elements': '2', 'container_doc': "<?xml version='1.0' encoding='utf-8'?>\n<cities>\n</cities>", 'element_container_tag': 'cities'}
2023-01-09 14:54:34,218 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardXmlOutput'}
2023-01-09 14:54:34,218 chain INFO Running Chain: input_big_xml_file|xml_assembler|transformer_xslt|output_std
2023-01-09 14:54:34,218 fileinput INFO file opened : input/cities.xml
2023-01-09 14:54:34,219 xmlassembler INFO xmldoc ready: elms=2 total_elms=2
2023-01-09 14:54:34,219 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:34,219 fileinput INFO End of doc: input/cities.xml elem_count=3
2023-01-09 14:54:34,219 fileinput INFO End of stream
2023-01-09 14:54:34,219 xmlassembler INFO xmldoc ready: elms=1 total_elms=3
2023-01-09 14:54:34,220 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:34,220 component INFO XmlElementStreamerFileInput invokes=26 time(total, min, max, avg) = 0.001 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:34,220 component INFO XmlAssembler invokes=26 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:34,220 component INFO XsltFilter invokes=26 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:34,220 component INFO StandardXmlOutput invokes=26 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:34,220 chain INFO DONE - 26 rounds - chain=input_big_xml_file|xml_assembler|transformer_xslt|output_std 
2023-01-09 14:54:34,220 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:34,220 ETL INFO ALL DONE
<?xml version='1.0' encoding='utf-8'?>
<ogr:FeatureCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ogr="http://ogr.maptools.org/" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://ogr.maptools.org/ ../gmlcities.xsd  http://www.opengis.net/gml http://schemas.opengis.net/gml/2.1.2/feature.xsd">
  <gml:boundedBy>
    <gml:Box>
      <gml:coord>
        <gml:X>-180.0</gml:X>
        <gml:Y>-90.0</gml:Y>
      </gml:coord>
      <gml:coord>
        <gml:X>180.0</gml:X>
        <gml:Y>90.0</gml:Y>
      </gml:coord>
    </gml:Box>
  </gml:boundedBy>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Amsterdam</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>52.4,4.9</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Bonn</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>50.7,7.1</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
</ogr:FeatureCollection>

<?xml version='1.0' encoding='utf-8'?>
<ogr:FeatureCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ogr="http://ogr.maptools.org/" xmlns:gml="http://www.opengis.net/gml" xsi:schemaLocation="http://ogr.maptools.org/ ../gmlcities.xsd  http://www.opengis.net/gml http://schemas.opengis.net/gml/2.1.2/feature.xsd">
  <gml:boundedBy>
    <gml:Box>
      <gml:coord>
        <gml:X>-180.0</gml:X>
        <gml:Y>-90.0</gml:Y>
      </gml:coord>
      <gml:coord>
        <gml:X>180.0</gml:X>
        <gml:Y>90.0</gml:Y>
      </gml:coord>
    </gml:Box>
  </gml:boundedBy>
  <gml:featureMember>
    <ogr:City>
      <ogr:name>Rome</ogr:name>
      <ogr:geometry>
        <gml:Point srsName="urn:ogc:def:crs:EPSG:4326">
          <gml:coordinates>41.9,12.5</gml:coordinates>
        </gml:Point>
      </ogr:geometry>
    </ogr:City>
  </gml:featureMember>
</ogr:FeatureCollection>

~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/6_cmdargs ~/project/stetl/git/examples/basics
==== running etl.sh for 6_cmdargs ====
2023-01-09 14:54:34,549 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:34,600 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:34,616 main INFO Stetl version = 2.1
2023-01-09 14:54:34,617 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:34,617 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/6_cmdargs
2023-01-09 14:54:34,618 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:34,619 ETL INFO Substituting 3 args in config file from args_dict: ['out_xml', 'in_xsl', 'in_xml']
2023-01-09 14:54:34,619 ETL INFO Substituting args OK
2023-01-09 14:54:34,619 ETL INFO START
2023-01-09 14:54:34,619 util INFO Timer start: total ETL
2023-01-09 14:54:34,619 chain INFO Assembling Chain: input_xml_file|transformer_xslt|output_file...
2023-01-09 14:54:34,631 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.xml'}
2023-01-09 14:54:34,631 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:34,635 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/gmlcities.gml'}
2023-01-09 14:54:34,635 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/6_cmdargs
2023-01-09 14:54:34,635 chain INFO Running Chain: input_xml_file|transformer_xslt|output_file
2023-01-09 14:54:34,635 fileinput INFO Read/parse for start for file=input/cities.xml....
2023-01-09 14:54:34,635 fileinput INFO Read/parse ok for file=input/cities.xml
2023-01-09 14:54:34,635 fileinput INFO all files done
2023-01-09 14:54:34,636 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:34,636 fileoutput INFO writing to file output/gmlcities.gml
2023-01-09 14:54:34,636 fileoutput INFO written to output/gmlcities.gml
2023-01-09 14:54:34,636 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:34,636 component INFO XsltFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:34,637 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.001 0.001 0.001 0.001
2023-01-09 14:54:34,637 chain INFO DONE - 1 rounds - chain=input_xml_file|transformer_xslt|output_file 
2023-01-09 14:54:34,637 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:34,637 ETL INFO ALL DONE
2023-01-09 14:54:34,943 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:34,991 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:35,008 main INFO Stetl version = 2.1
2023-01-09 14:54:35,010 main INFO Found args file at: etl.args
2023-01-09 14:54:35,010 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:35,010 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/6_cmdargs
2023-01-09 14:54:35,011 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:35,011 ETL INFO Substituting 3 args in config file from args_dict: ['in_xsl', 'in_xml', 'out_xml']
2023-01-09 14:54:35,011 ETL INFO Substituting args OK
2023-01-09 14:54:35,011 ETL INFO START
2023-01-09 14:54:35,011 util INFO Timer start: total ETL
2023-01-09 14:54:35,011 chain INFO Assembling Chain: input_xml_file|transformer_xslt|output_file...
2023-01-09 14:54:35,024 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.xml'}
2023-01-09 14:54:35,024 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:35,027 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/gmlcities.gml'}
2023-01-09 14:54:35,027 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/6_cmdargs
2023-01-09 14:54:35,027 chain INFO Running Chain: input_xml_file|transformer_xslt|output_file
2023-01-09 14:54:35,027 fileinput INFO Read/parse for start for file=input/cities.xml....
2023-01-09 14:54:35,028 fileinput INFO Read/parse ok for file=input/cities.xml
2023-01-09 14:54:35,028 fileinput INFO all files done
2023-01-09 14:54:35,028 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:35,028 fileoutput INFO writing to file output/gmlcities.gml
2023-01-09 14:54:35,028 fileoutput INFO written to output/gmlcities.gml
2023-01-09 14:54:35,028 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:35,028 component INFO XsltFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:35,029 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:35,029 chain INFO DONE - 1 rounds - chain=input_xml_file|transformer_xslt|output_file 
2023-01-09 14:54:35,029 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:35,029 ETL INFO ALL DONE
2023-01-09 14:54:35,326 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:35,370 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:35,386 main INFO Stetl version = 2.1
2023-01-09 14:54:35,387 main INFO Found args file at: etl.args
2023-01-09 14:54:35,388 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:35,388 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/6_cmdargs
2023-01-09 14:54:35,388 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:35,388 ETL INFO Substituting 3 args in config file from args_dict: ['in_xml', 'out_xml', 'in_xsl']
2023-01-09 14:54:35,389 ETL INFO Substituting args OK
2023-01-09 14:54:35,389 ETL INFO START
2023-01-09 14:54:35,389 util INFO Timer start: total ETL
2023-01-09 14:54:35,389 chain INFO Assembling Chain: input_xml_file|transformer_xslt|output_file...
2023-01-09 14:54:35,414 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/amsterdam.xml'}
2023-01-09 14:54:35,414 fileinput INFO file_list=['input/amsterdam.xml']
2023-01-09 14:54:35,418 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/gmlcities.gml'}
2023-01-09 14:54:35,418 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/6_cmdargs
2023-01-09 14:54:35,418 chain INFO Running Chain: input_xml_file|transformer_xslt|output_file
2023-01-09 14:54:35,418 fileinput INFO Read/parse for start for file=input/amsterdam.xml....
2023-01-09 14:54:35,419 fileinput INFO Read/parse ok for file=input/amsterdam.xml
2023-01-09 14:54:35,419 fileinput INFO all files done
2023-01-09 14:54:35,419 xsltfilter INFO XSLT Transform OK
2023-01-09 14:54:35,419 fileoutput INFO writing to file output/gmlcities.gml
2023-01-09 14:54:35,420 fileoutput INFO written to output/gmlcities.gml
2023-01-09 14:54:35,420 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:35,420 component INFO XsltFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:35,420 component INFO FileOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:35,420 chain INFO DONE - 1 rounds - chain=input_xml_file|transformer_xslt|output_file 
2023-01-09 14:54:35,420 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:35,420 ETL INFO ALL DONE
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/7_mycomponent ~/project/stetl/git/examples/basics
==== running etl.sh for 7_mycomponent ====
2023-01-09 14:54:35,728 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:35,776 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:35,792 main INFO Stetl version = 2.1
2023-01-09 14:54:35,793 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:35,793 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/7_mycomponent
2023-01-09 14:54:35,793 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:35,794 ETL INFO START
2023-01-09 14:54:35,794 util INFO Timer start: total ETL
2023-01-09 14:54:35,794 chain INFO Assembling Chain: input_xml_file|my_filter|output_std...
2023-01-09 14:54:35,807 input INFO cfg = {'class': 'stetl.inputs.fileinput.XmlFileInput', 'file_path': 'input/cities.xml'}
2023-01-09 14:54:35,807 fileinput INFO file_list=['input/cities.xml']
2023-01-09 14:54:35,809 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardXmlOutput'}
2023-01-09 14:54:35,809 chain INFO Running Chain: input_xml_file|my_filter|output_std
2023-01-09 14:54:35,809 fileinput INFO Read/parse for start for file=input/cities.xml....
2023-01-09 14:54:35,810 fileinput INFO Read/parse ok for file=input/cities.xml
2023-01-09 14:54:35,810 fileinput INFO all files done
2023-01-09 14:54:35,810 myfilter INFO CALLING MyFilter OK!!!!
2023-01-09 14:54:35,810 component INFO XmlFileInput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:35,810 component INFO MyFilter invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:35,810 component INFO StandardXmlOutput invokes=1 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:35,810 chain INFO DONE - 1 rounds - chain=input_xml_file|my_filter|output_std 
2023-01-09 14:54:35,810 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:35,810 ETL INFO ALL DONE
Welcome to Amsterdam !
Welcome to Bonn !
Welcome to Rome !
<?xml version='1.0' encoding='utf-8'?>
<cities>
    <city>
        <name>Amsterdam</name>
        <lat>52.4</lat>
        <lon>4.9</lon>
    </city>
    <city>
        <name>Bonn</name>
        <lat>50.7</lat>
        <lon>7.1</lon>
    </city>
    <city>
        <name>Rome</name>
        <lat>41.9</lat>
        <lon>12.5</lon>
    </city>
</cities>

~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/8_wfs ~/project/stetl/git/examples/basics
==== running etl.sh for 8_wfs ====
2023-01-09 14:54:36,114 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:36,161 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:36,179 main INFO Stetl version = 2.1
2023-01-09 14:54:36,180 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:36,181 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/8_wfs
2023-01-09 14:54:36,181 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:36,181 ETL INFO START
2023-01-09 14:54:36,181 util INFO Timer start: total ETL
2023-01-09 14:54:36,182 chain INFO Assembling Chain: input_wfs|output_std...
2023-01-09 14:54:36,197 input INFO cfg = {'class': 'stetl.inputs.httpinput.HttpInput', 'url': "https://service.pdok.nl/lv/bag/wfs/v2_0?'", 'parameters': '{\n\'service\' : \'WFS\',\n\'version\' : \'1.1.0\',\n\'request\' : \'GetFeature\',\n\'srsName\' : \'EPSG:28992\',\n\'outputFormat\' : \'text/xml; subtype=gml/2.1.2\',\n\'typename\' : \'verblijfsobject\',\n\'filter\' :\'<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc"><ogc:BBOX><gml:Envelope xmlns:gml="http://www.opengis.net/gml" srsName="EPSG:28992"><gml:lowerCorner>183774.83 450577.24</gml:lowerCorner><gml:upperCorner>184277.99 450809.92</gml:upperCorner></gml:Envelope></ogc:BBOX></ogc:Filter>\'\n}'}
2023-01-09 14:54:36,198 httpinput INFO url=https://service.pdok.nl/lv/bag/wfs/v2_0?' parameters={'service': 'WFS', 'version': '1.1.0', 'request': 'GetFeature', 'srsName': 'EPSG:28992', 'outputFormat': 'text/xml; subtype=gml/2.1.2', 'typename': 'verblijfsobject', 'filter': '<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc"><ogc:BBOX><gml:Envelope xmlns:gml="http://www.opengis.net/gml" srsName="EPSG:28992"><gml:lowerCorner>183774.83 450577.24</gml:lowerCorner><gml:upperCorner>184277.99 450809.92</gml:upperCorner></gml:Envelope></ogc:BBOX></ogc:Filter>'}
2023-01-09 14:54:36,199 output INFO cfg = {'class': 'stetl.outputs.standardoutput.StandardOutput'}
2023-01-09 14:54:36,199 chain INFO Running Chain: input_wfs|output_std
2023-01-09 14:54:36,666 httpinput INFO EOF URL reading done
2023-01-09 14:54:36,666 component INFO HttpInput invokes=2 time(total, min, max, avg) = 0.466 0.466 0.466 0.233
2023-01-09 14:54:36,666 component INFO StandardOutput invokes=2 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:36,666 chain INFO DONE - 2 rounds - chain=input_wfs|output_std 
2023-01-09 14:54:36,666 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:36,666 ETL INFO ALL DONE
b'<?xml version=\'1.0\' encoding="UTF-8" ?>\n<wfs:FeatureCollection\n   xmlns:bag="http://bag.geonovum.nl"\n   xmlns:wfs="http://www.opengis.net/wfs"\n   xmlns:gml="http://www.opengis.net/gml"\n   xmlns:ogc="http://www.opengis.net/ogc"\n   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\n   xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/WFS-basic.xsd \n                       http://bag.geonovum.nl https://service.pdok.nl/lv/bag/wfs/v2_0?SERVICE=WFS&amp;VERSION=1.1.0&amp;REQUEST=DescribeFeatureType&amp;TYPENAME=verblijfsobject&amp;OUTPUTFORMAT=XMLSCHEMA">\n      <gml:boundedBy>\n      \t<gml:Box srsName="EPSG:28992">\n      \t\t<gml:coordinates>183936.000000,450637.000000 183987.000000,450673.000000</gml:coordinates>\n      \t</gml:Box>\n      </gml:boundedBy>\n    <gml:featureMember>\n      <bag:verblijfsobject fid="verblijfsobject.742c83ed-8ec2-46a9-bd6e-ef1a10af613b">\n        <gml:boundedBy>\n        \t<gml:Box srsName="EPSG:28992">\n        \t\t<gml:coordinates>183936.000000,450637.000000 183936.000000,450637.000000</gml:coordinates>\n        \t</gml:Box>\n        </gml:boundedBy>\n        <bag:geom>\n        <gml:Point srsName="EPSG:28992">\n          <gml:coordinates>183936.000000,450637.000000</gml:coordinates>\n        </gml:Point>\n        </bag:geom>\n        <bag:identificatie>0228010000047219</bag:identificatie>\n        <bag:rdf_seealso>http://bag.basisregistraties.overheid.nl/bag/id/verblijfsobject/0228010000047219</bag:rdf_seealso>\n        <bag:oppervlakte>121</bag:oppervlakte>\n        <bag:status>Verblijfsobject in gebruik</bag:status>\n        <bag:gebruiksdoel>woonfunctie</bag:gebruiksdoel>\n        <bag:openbare_ruimte>Harderwijkerweg</bag:openbare_ruimte>\n        <bag:huisnummer>1</bag:huisnummer>\n        <bag:huisletter></bag:huisletter>\n        <bag:toevoeging></bag:toevoeging>\n        <bag:postcode>6731ST</bag:postcode>\n        <bag:woonplaats>Otterlo</bag:woonplaats>\n        <bag:bouwjaar>1947</bag:bouwjaar>\n        <bag:pandidentificatie>0228100000027383</bag:pandidentificatie>\n        <bag:pandstatus>Pand in gebruik</bag:pandstatus>\n        <bag:fuuid>verblijfsobject.742c83ed-8ec2-46a9-bd6e-ef1a10af613b</bag:fuuid>\n      </bag:verblijfsobject>\n    </gml:featureMember>\n    <gml:featureMember>\n      <bag:verblijfsobject fid="verblijfsobject.ff541c7f-8132-423f-8717-a59ae3a1e29b">\n        <gml:boundedBy>\n        \t<gml:Box srsName="EPSG:28992">\n        \t\t<gml:coordinates>183987.000000,450673.000000 183987.000000,450673.000000</gml:coordinates>\n        \t</gml:Box>\n        </gml:boundedBy>\n        <bag:geom>\n        <gml:Point srsName="EPSG:28992">\n          <gml:coordinates>183987.000000,450673.000000</gml:coordinates>\n        </gml:Point>\n        </bag:geom>\n        <bag:identificatie>0228010000047281</bag:identificatie>\n        <bag:rdf_seealso>http://bag.basisregistraties.overheid.nl/bag/id/verblijfsobject/0228010000047281</bag:rdf_seealso>\n        <bag:oppervlakte>96</bag:oppervlakte>\n        <bag:status>Verblijfsobject in gebruik</bag:status>\n        <bag:gebruiksdoel>woonfunctie</bag:gebruiksdoel>\n        <bag:openbare_ruimte>Harderwijkerweg</bag:openbare_ruimte>\n        <bag:huisnummer>2</bag:huisnummer>\n        <bag:huisletter></bag:huisletter>\n        <bag:toevoeging></bag:toevoeging>\n        <bag:postcode>6731ST</bag:postcode>\n        <bag:woonplaats>Otterlo</bag:woonplaats>\n        <bag:bouwjaar>1947</bag:bouwjaar>\n        <bag:pandidentificatie>0228100000006908</bag:pandidentificatie>\n        <bag:pandstatus>Pand in gebruik</bag:pandstatus>\n        <bag:fuuid>verblijfsobject.ff541c7f-8132-423f-8717-a59ae3a1e29b</bag:fuuid>\n      </bag:verblijfsobject>\n    </gml:featureMember>\n</wfs:FeatureCollection>\n\n'
~/project/stetl/git/examples/basics
~/project/stetl/git/examples/basics/9_string_templating ~/project/stetl/git/examples/basics
==== running etl.sh for 9_string_templating ====
2023-01-09 14:54:36,977 util INFO Found lxml.etree, native XML parsing, fabulous!
2023-01-09 14:54:37,025 util INFO Found GDAL/OGR Python bindings, super!!
2023-01-09 14:54:37,041 main INFO Stetl version = 2.1
2023-01-09 14:54:37,042 ETL INFO INIT - Stetl version is 2.1
2023-01-09 14:54:37,043 ETL INFO Config/working dir = /Users/just/project/stetl/git/examples/basics/9_string_templating
2023-01-09 14:54:37,043 ETL INFO Reading config_file = etl.cfg
2023-01-09 14:54:37,043 ETL INFO START
2023-01-09 14:54:37,043 util INFO Timer start: total ETL
2023-01-09 14:54:37,044 chain INFO Assembling Chain: input_csv|filter_template|output_file...
2023-01-09 14:54:37,060 input INFO cfg = {'class': 'stetl.inputs.fileinput.CsvFileInput', 'file_path': 'input/city.csv', 'output_format': 'record'}
2023-01-09 14:54:37,060 fileinput INFO file_list=['input/city.csv']
2023-01-09 14:54:37,066 output INFO cfg = {'class': 'stetl.outputs.fileoutput.FileOutput', 'file_path': 'output/city.xml'}
2023-01-09 14:54:37,067 fileoutput INFO working dir /Users/just/project/stetl/git/examples/basics/9_string_templating
2023-01-09 14:54:37,067 chain INFO Running Chain: input_csv|filter_template|output_file
2023-01-09 14:54:37,067 fileinput INFO Open CSV file: input/city.csv
2023-01-09 14:54:37,067 templatingfilter INFO Init: templating
2023-01-09 14:54:37,067 templatingfilter INFO Init: reading template file %s ..." % self.template_file
2023-01-09 14:54:37,067 templatingfilter INFO template file read OK: city_template.xml
2023-01-09 14:54:37,068 fileinput INFO CSV row nr 1 read: {'city': 'amsterdam', 'lat': '52.4', 'lon': '4.9'}
2023-01-09 14:54:37,068 fileoutput INFO writing to file output/city.xml
2023-01-09 14:54:37,068 fileoutput INFO written to output/city.xml
2023-01-09 14:54:37,068 component INFO CsvFileInput invokes=2 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:37,069 templatingfilter INFO Exit: templating
2023-01-09 14:54:37,069 component INFO StringTemplatingFilter invokes=2 time(total, min, max, avg) = 0.000 9223372036854775808.000 0.000 0.000
2023-01-09 14:54:37,069 component INFO FileOutput invokes=2 time(total, min, max, avg) = 0.001 0.001 0.001 0.000
2023-01-09 14:54:37,069 chain INFO DONE - 2 rounds - chain=input_csv|filter_template|output_file 
2023-01-09 14:54:37,069 util INFO Timer end: total ETL time=0.0 sec
2023-01-09 14:54:37,069 ETL INFO ALL DONE
~/project/stetl/git/examples/basics
