report_timing parameter being ignored

74 views
Skip to first unread message

Mike Revitt

unread,
Feb 21, 2020, 5:52:39 PM2/21/20
to weewx-user
I have created a skin to backup my sqlite database file daily but it runs every archive period. Any advice on what to change to make this work

my weewx

    [[S3-Backup]]
        # Using AWS-S3 to copy the results to a webserver is treated as just
        # another report, albeit one with an unusual report generator!
        skin = S3Backup
        report_timing = 5 0 * * *
        enable = true


I have also tried report_timing = @daily, but my report is running every archive period, currently set to 300 or 5 minutes

This is the last run from syslog showing an upload initiated at 22:45:32 and completing 48 seconds later, not what I was expecting.

Feb 21 22:45:20 Rasberry weewx[15808] INFO weewx.cheetahgenerator: Generated 7 files for report SeasonsReport in 4.08 seconds
Feb 21 22:45:22 Rasberry weewx[15808] INFO weewx.imagegenerator: Generated 9 images for report SeasonsReport in 1.05 seconds
Feb 21 22:45:22 Rasberry weewx[15808] INFO weewx.reportengine: Copied 22 files to /var/www/html/MountWeather
Feb 21 22:45:23 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:45:24 Rasberry weewx[15808] INFO botocore.credentials: Found credentials in shared credentials file: ~/.aws/credentials
Feb 21 22:45:28 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:45:32 Rasberry weewx[15808] INFO user.s3upload: S3UploadGenerator: AWS-S3 copied 38 files to S3 in 8.59 seconds
Feb 21 22:45:32 Rasberry weewx[15808] INFO botocore.credentials: Found credentials in shared credentials file: ~/.aws/credentials
Feb 21 22:45:37 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:45:44 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:45:50 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:45:56 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:46:00 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:46:09 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:46:13 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:46:17 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:46:21 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 21 22:46:21 Rasberry weewx[15808] INFO user.s3backup: S3BackupGenerator: S3 copied files to S3 in 0 attemps which took in 48.79 seconds
Feb 21 22:46:29 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd



vince

unread,
Feb 21, 2020, 6:11:59 PM2/21/20
to weewx-user
On Friday, February 21, 2020 at 2:52:39 PM UTC-8, Mike Revitt wrote:
I have created a skin to backup my sqlite database file daily but it runs every archive period. Any advice on what to change to make this work



Can't say without seeing your skin's python code, but I'd "guess" that it's not reading your report_timing values and acting accordingly.

You also have "attempts" spelled incorrectly in your logging :-)

Personally I'd just do this from cron outside weewx as a far simpler solution, but it would be interesting to see your code.

gjr80

unread,
Feb 21, 2020, 6:26:49 PM2/21/20
to weewx-user
The report timing mechanism has no involvement with any skin code, it simply looks at the report_timing option and the timestamp of the current record and determines whether to call the skin or not.

Mike, can you set debug = 1 in weewx.conf then restart WeeWX. Let WeeWX run for 15 minutes and post a log extract showing at least two consecutive report cycles, in this case the report cycle portion rather than the startup portion of the log is important.

Gary

Chris Richmond

unread,
Feb 21, 2020, 6:43:14 PM2/21/20
to weewx-user
A while ago, someone had copy/edited the rsync or ftp report to back up the database.  Search the archive for that thread.  Seemed like a slick solution to me.
The problem with an asynchronous cron job, is  potentially making a copy of the file while its being updated.

Chris


gjr80

unread,
Feb 21, 2020, 8:14:41 PM2/21/20
to weewx-user
One more thing, are you presently running under python 3? if so make sure you have the pulled down the latest from the master branch, I pushed a fix for report timing under python 3 on 15 Feb. If this is your problem it will be quite evident when you look at a debug log.

Gary

Mike Revitt

unread,
Feb 22, 2020, 1:57:05 AM2/22/20
to weewx-user
Yes using python 3, and probably not on the latest. But interestingly its looks like it works in debug mode, or crashed before it got there, Look at my recent thread on the crash I have been seeing. 

Here is the output, sorry about the length

pi@Rasberry:/home/weewx $ sudo /etc/init.d/weewx start
[ ok ] Starting weewx (via systemctl): weewx.service.
pi@Rasberry:/home/weewx $ sudo /etc/init.d/weewx status
● weewx.service - LSB: weewx weather system
   Loaded: loaded (/etc/init.d/weewx; generated; vendor preset: enabled)
   Active: active (running) since Sat 2020-02-22 06:41:51 GMT; 10s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 25606 ExecStop=/etc/init.d/weewx stop (code=exited, status=0/SUCCESS)
  Process: 25728 ExecStart=/etc/init.d/weewx start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/weewx.service
           └─25743 /usr/bin/python /home/weewx/bin/weewxd --daemon --pidfile=/var/run/weewx.pid /home/weewx/weewx.conf

Feb 22 06:41:52 Rasberry weewxd[25743]: weewx[25743] DEBUG weewx.engine: Finished loading service weewx.restx.StdAWEKAS
Feb 22 06:41:52 Rasberry weewxd[25743]: weewx[25743] DEBUG weewx.engine: Loading service weewx.engine.StdPrint
Feb 22 06:41:52 Rasberry weewxd[25743]: weewx[25743] DEBUG weewx.engine: Finished loading service weewx.engine.StdPrint
Feb 22 06:41:52 Rasberry weewxd[25743]: weewx[25743] DEBUG weewx.engine: Loading service weewx.engine.StdReport
Feb 22 06:41:52 Rasberry weewxd[25743]: weewx[25743] DEBUG weewx.engine: Finished loading service weewx.engine.StdReport
Feb 22 06:41:52 Rasberry weewxd[25743]: weewx[25743] INFO __main__: Starting up weewx version 4.0.0b12
Feb 22 06:41:52 Rasberry weewxd[25743]: weewx[25743] INFO weewx.engine: Clock error is -0.21 seconds (positive is fast)
Feb 22 06:41:52 Rasberry weewxd[25743]: weewx[25743] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx.sdb'
Feb 22 06:41:52 Rasberry weewxd[25743]: weewx[25743] INFO weewx.manager: Starting backfill of daily summaries
Feb 22 06:41:52 Rasberry weewxd[25743]: weewx[25743] INFO weewx.engine: Starting main packet loop.
pi@Rasberry:/home/weewx $ sudo tail -f /var/log/syslog
Feb 22 06:41:52 Rasberry weewx[25743] DEBUG weewx.engine: Loading service weewx.engine.StdReport
Feb 22 06:41:52 Rasberry weewx[25743] DEBUG weewx.engine: Finished loading service weewx.engine.StdReport
Feb 22 06:41:52 Rasberry weewx[25743] INFO __main__: Starting up weewx version 4.0.0b12
Feb 22 06:41:52 Rasberry weewx[25743] INFO weewx.engine: Clock error is -0.21 seconds (positive is fast)
Feb 22 06:41:52 Rasberry weewx[25743] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx.sdb'
Feb 22 06:41:52 Rasberry weewx[25743] INFO weewx.manager: Starting backfill of daily summaries
Feb 22 06:41:52 Rasberry weewx[25743] INFO weewx.engine: Starting main packet loop.
Feb 22 06:45:16 Rasberry weewx[25743] INFO weewx.manager: Added record 2020-02-22 06:45:00 GMT (1582353900) to database 'weewx.sdb'
Feb 22 06:45:16 Rasberry weewx[25743] INFO weewx.manager: Added record 2020-02-22 06:45:00 GMT (1582353900) to daily summary in 'weewx.sdb'
Feb 22 06:45:17 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Running reports for latest time in the database.
Feb 22 06:45:17 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Running report 'SeasonsReport'
Feb 22 06:45:17 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Found configuration file /home/weewx/skins/Seasons/skin.conf for report 'SeasonsReport'
Feb 22 06:45:17 Rasberry weewx[25743] DEBUG weewx.cheetahgenerator: Using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras', 'user.stats.MyStats']
Feb 22 06:45:17 Rasberry weewx[25743] DEBUG weewx.manager: Daily summary version is 1.0
Feb 22 06:45:21 Rasberry weewx[25743] INFO weewx.cheetahgenerator: Generated 8 files for report SeasonsReport in 4.16 seconds
Feb 22 06:45:21 Rasberry weewx[25743] DEBUG weewx.manager: Daily summary version is 1.0
Feb 22 06:45:22 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 22 06:45:27 Rasberry weewx[25743] INFO weewx.imagegenerator: Generated 27 images for report SeasonsReport in 6.32 seconds
Feb 22 06:45:27 Rasberry weewx[25743] INFO weewx.reportengine: Copied 22 files to /var/www/html/MountWeather
Feb 22 06:45:27 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Report 'SmartphoneReport' not enabled. Skipping.
Feb 22 06:45:27 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Report 'MobileReport' not enabled. Skipping.
Feb 22 06:45:27 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Report 'StandardReport' not enabled. Skipping.
Feb 22 06:45:27 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Report 'FTP' not enabled. Skipping.
Feb 22 06:45:27 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Report 'RSYNC' not enabled. Skipping.
Feb 22 06:45:27 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Running report 'AWS-S3'
Feb 22 06:45:27 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Found configuration file /home/weewx/skins/S3/skin.conf for report 'AWS-S3'
Feb 22 06:45:28 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Invalid report_timing setting for report 'AWS-S3', running report anyway
Feb 22 06:45:28 Rasberry weewx[25743] DEBUG weewx.reportengine:        ****  Invalid field '' in '5, ,0, ,*, ,*, ,*'
Feb 22 06:45:28 Rasberry dhcpcd[362]: eth0: Router Advertisement from fe80::9ada:c4ff:fe5f:88fd
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from before-call.apigateway to before-call.api-gateway
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.hooks: Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.session: Setting config variable for profile to 'mike'
Feb 22 06:45:29 Rasberry weewx[25743] DEBUG botocore.session: Setting config variable for region to 'eu-west-2'
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.loaders: Loading JSON file: /usr/local/lib/python3.5/dist-packages/boto3/data/s3/2006-03-01/resources-1.json
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.credentials: Skipping environment variable credential check because profile name was explicitly set.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.credentials: Looking for credentials via: assume-role
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.credentials: Looking for credentials via: assume-role-with-web-identity
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.credentials: Looking for credentials via: shared-credentials-file
Feb 22 06:45:30 Rasberry weewx[25743] INFO botocore.credentials: Found credentials in shared credentials file: ~/.aws/credentials
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.loaders: Loading JSON file: /usr/local/lib/python3.5/dist-packages/botocore/data/endpoints.json
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event choose-service-name: calling handler <function handle_service_name_alias at 0x74495588>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.loaders: Loading JSON file: /usr/local/lib/python3.5/dist-packages/botocore/data/s3/2006-03-01/service-2.json
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event creating-client-class.s3: calling handler <function add_generate_presigned_post at 0x744e3588>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event creating-client-class.s3: calling handler <function lazy_call.<locals>._handler at 0x74457c48>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event creating-client-class.s3: calling handler <function add_generate_presigned_url at 0x744e3468>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.endpoint: Setting s3 timeout as (60, 60)
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.loaders: Loading JSON file: /usr/local/lib/python3.5/dist-packages/botocore/data/_retry.json
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.client: Registering retry handlers for service: s3
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG boto3.resources.factory: Loading s3:s3
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: #012========================================================================================
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: S3Upload started at: 22-02-2020 06:45:30
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: monthrain.png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: #012response=s3.meta.client.upload_file(/var/www/html/MountWeather/monthrain.png,s3-archive.revittmk.aws.co.uk,monthrain.png)
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: #011#011ExtraArgs={'CacheControl': 300
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: #011#011#011ContentType' : image/png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740deff0>}) about to wait for the following futures []
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740deff0>}) done waiting for dependent futures
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740deff0>}) with kwargs {'request_executor': <s3transfer.futures.BoundedExecutor object at 0x740debd0>, 'config': <boto3.s3.transfer.TransferConfig object at 0x740d0170>, 'client': <botocore.client.S3 object at 0x74182e10>, 'osutil': <s3transfer.utils.OSUtils object at 0x740d0130>, 'transfer_future': <s3transfer.futures.TransferFuture object at 0x740deff0>}
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.futures: Submitting task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'monthrain.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) to executor <s3transfer.futures.BoundedExecutor object at 0x740debd0> for transfer request: 0.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'monthrain.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) about to wait for the following futures []
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'monthrain.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) done waiting for dependent futures
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'monthrain.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) with kwargs {'bucket': 's3-archive.revittmk.aws.co.uk', 'fileobj': <s3transfer.utils.ReadFileChunk object at 0x740e3190>, 'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'monthrain.png', 'client': <botocore.client.S3 object at 0x74182e10>}
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_ascii_metadata at 0x744b9540>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function sse_md5 at 0x744b3f18>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function convert_body_to_file_like_object at 0x744b99c0>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_bucket_name at 0x744b3ed0>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_cache of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3ArnParamHandler.handle_arn of <botocore.utils.S3ArnParamHandler object at 0x74127f10>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function generate_idempotent_uuid at 0x744b3cd8>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function conditionally_calculate_md5 at 0x744b3e88>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function add_expect_header at 0x744b90c0>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.handlers: Adding expect 100 continue header to request.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <bound method S3RegionRedirector.set_request_url of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function inject_api_version_header_if_needed at 0x744b9a50>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.endpoint: Making request for OperationModel(name=PutObject) with params: {'url': 'https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/monthrain.png', 'context': {'client_region': 'eu-west-2', 'client_config': <botocore.config.Config object at 0x74188130>, 'auth_type': None, 'signing': {'bucket': 's3-archive.revittmk.aws.co.uk'}, 'has_streaming_input': True}, 'body': <s3transfer.utils.ReadFileChunk object at 0x740e3190>, 'url_path': '/s3-archive.revittmk.aws.co.uk/monthrain.png', 'query_string': {}, 'headers': {'Content-Type': 'image/png', 'User-Agent': 'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource', 'Content-MD5': 'Tmoky1WxsRVlMyQAe2okzQ==', 'Cache-Control': '300', 'x-amz-acl': 'public-read', 'Expect': '100-continue'}, 'method': 'PUT'}
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_not_transferring at 0x7417f150>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <bound method RequestSigner.handler of <botocore.signers.RequestSigner object at 0x74188170>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event choose-signer.s3.PutObject: calling handler <function set_operation_specific_signer at 0x744b3c48>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-sign.s3.PutObject: calling handler <bound method S3EndpointSetter.set_endpoint of <botocore.utils.S3EndpointSetter object at 0x74127f50>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.utils: Defaulting to S3 virtual host style addressing with path style addressing fallback.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.utils: Checking for DNS compatible bucket for: https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/monthrain.png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.utils: Not changing URI, bucket is not DNS compatible: s3-archive.revittmk.aws.co.uk
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.auth: Calculating signature using v4 auth.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.auth: StringToSign:#012AWS4-HMAC-SHA256#01220200222T064530Z#01220200222/eu-west-2/s3/aws4_request#01234de4f937a699a90f7835cf3eccfa801c91b39f2f658b4380b78fad26ea298c4
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.auth: Signature:#012ca903e3c2167741b5b6f986429add68f1638f1aee3e321a528464e635ac03570
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_transferring at 0x7417f198>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.endpoint: Sending http request: <AWSPreparedRequest stream_output=False, method=PUT, url=https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/monthrain.png, headers={'Content-Length': '8873', 'X-Amz-Content-SHA256': b'UNSIGNED-PAYLOAD', 'Cache-Control': b'300', 'Expect': b'100-continue', 'Content-Type': b'image/png', 'X-Amz-Date': b'20200222T064530Z', 'Content-MD5': b'Tmoky1WxsRVlMyQAe2okzQ==', 'Authorization': b'AWS4-HMAC-SHA256 Credential=AKIAI7G5EWMRIJXE77FQ/20200222/eu-west-2/s3/aws4_request, SignedHeaders=cache-control;content-md5;content-type;host;x-amz-acl;x-amz-content-sha256;x-amz-date, Signature=ca903e3c2167741b5b6f986429add68f1638f1aee3e321a528464e635ac03570', 'x-amz-acl': b'public-read', 'User-Agent': b'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource'}>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG urllib3.connectionpool: Starting new HTTPS connection (1): s3.eu-west-2.amazonaws.com:443
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.awsrequest: Waiting for 100 Continue response.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.awsrequest: 100 Continue response seen, now sending request body.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG urllib3.connectionpool: https://s3.eu-west-2.amazonaws.com:443 "PUT /s3-archive.revittmk.aws.co.uk/monthrain.png HTTP/1.1" 200 0
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.parsers: Response headers: {'ETag': '"4e6a24cb55b1b115653324007b6a24cd"', 'Content-Length': '0', 'Date': 'Sat, 22 Feb 2020 06:45:31 GMT', 'x-amz-id-2': 'hcX8dsxlzmZiNfGgK6VvGK37lSs4H0TGkoM30ffpZLgbHMjqu7+WXL3TJ6Cl80Ybr1ENfK931Nk=', 'x-amz-request-id': '328F467D682F1E8C', 'Server': 'AmazonS3'}
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.parsers: Response body:#012b''
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <botocore.retryhandler.RetryHandler object at 0x74127ef0>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.retryhandler: No retry needed.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_error of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: Uploaded file monthrain.png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: daywind.png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: #012response=s3.meta.client.upload_file(/var/www/html/MountWeather/daywind.png,s3-archive.revittmk.aws.co.uk,daywind.png)
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: #011#011ExtraArgs={'CacheControl': 300
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: #011#011#011ContentType' : image/png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3110>}) about to wait for the following futures []
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3110>}) done waiting for dependent futures
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3110>}) with kwargs {'request_executor': <s3transfer.futures.BoundedExecutor object at 0x740deb10>, 'config': <boto3.s3.transfer.TransferConfig object at 0x740d0150>, 'client': <botocore.client.S3 object at 0x74182e10>, 'osutil': <s3transfer.utils.OSUtils object at 0x740d0130>, 'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3110>}
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.futures: Submitting task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'daywind.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) to executor <s3transfer.futures.BoundedExecutor object at 0x740deb10> for transfer request: 0.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'daywind.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) about to wait for the following futures []
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'daywind.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) done waiting for dependent futures
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'daywind.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) with kwargs {'bucket': 's3-archive.revittmk.aws.co.uk', 'fileobj': <s3transfer.utils.ReadFileChunk object at 0x740e3850>, 'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'daywind.png', 'client': <botocore.client.S3 object at 0x74182e10>}
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_ascii_metadata at 0x744b9540>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function sse_md5 at 0x744b3f18>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function convert_body_to_file_like_object at 0x744b99c0>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_bucket_name at 0x744b3ed0>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_cache of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3ArnParamHandler.handle_arn of <botocore.utils.S3ArnParamHandler object at 0x74127f10>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function generate_idempotent_uuid at 0x744b3cd8>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function conditionally_calculate_md5 at 0x744b3e88>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function add_expect_header at 0x744b90c0>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.handlers: Adding expect 100 continue header to request.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <bound method S3RegionRedirector.set_request_url of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function inject_api_version_header_if_needed at 0x744b9a50>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.endpoint: Making request for OperationModel(name=PutObject) with params: {'url': 'https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/daywind.png', 'context': {'client_region': 'eu-west-2', 'client_config': <botocore.config.Config object at 0x74188130>, 'auth_type': None, 'signing': {'bucket': 's3-archive.revittmk.aws.co.uk'}, 'has_streaming_input': True}, 'body': <s3transfer.utils.ReadFileChunk object at 0x740e3850>, 'url_path': '/s3-archive.revittmk.aws.co.uk/daywind.png', 'query_string': {}, 'headers': {'Content-Type': 'image/png', 'User-Agent': 'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource', 'Content-MD5': 'hR4p1bQIlKORcZZ8Hrq5og==', 'Cache-Control': '300', 'x-amz-acl': 'public-read', 'Expect': '100-continue'}, 'method': 'PUT'}
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_not_transferring at 0x7417f150>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <bound method RequestSigner.handler of <botocore.signers.RequestSigner object at 0x74188170>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event choose-signer.s3.PutObject: calling handler <function set_operation_specific_signer at 0x744b3c48>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-sign.s3.PutObject: calling handler <bound method S3EndpointSetter.set_endpoint of <botocore.utils.S3EndpointSetter object at 0x74127f50>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.utils: Checking for DNS compatible bucket for: https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/daywind.png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.utils: Not changing URI, bucket is not DNS compatible: s3-archive.revittmk.aws.co.uk
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.auth: Calculating signature using v4 auth.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.auth: StringToSign:#012AWS4-HMAC-SHA256#01220200222T064530Z#01220200222/eu-west-2/s3/aws4_request#012867ac405563d7cd66fc7a03f07672bbba0671f8b55ce8163bff4c6d991af0dd3
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.auth: Signature:#01242133e5a2df3c6ffc8d7cda971fff0651be83ae776c762e3f4768a5f5df0a890
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_transferring at 0x7417f198>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.endpoint: Sending http request: <AWSPreparedRequest stream_output=False, method=PUT, url=https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/daywind.png, headers={'Content-Length': '13435', 'X-Amz-Content-SHA256': b'UNSIGNED-PAYLOAD', 'Cache-Control': b'300', 'Expect': b'100-continue', 'Content-Type': b'image/png', 'X-Amz-Date': b'20200222T064530Z', 'Content-MD5': b'hR4p1bQIlKORcZZ8Hrq5og==', 'Authorization': b'AWS4-HMAC-SHA256 Credential=AKIAI7G5EWMRIJXE77FQ/20200222/eu-west-2/s3/aws4_request, SignedHeaders=cache-control;content-md5;content-type;host;x-amz-acl;x-amz-content-sha256;x-amz-date, Signature=42133e5a2df3c6ffc8d7cda971fff0651be83ae776c762e3f4768a5f5df0a890', 'x-amz-acl': b'public-read', 'User-Agent': b'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource'}>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.awsrequest: Waiting for 100 Continue response.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.awsrequest: 100 Continue response seen, now sending request body.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG urllib3.connectionpool: https://s3.eu-west-2.amazonaws.com:443 "PUT /s3-archive.revittmk.aws.co.uk/daywind.png HTTP/1.1" 200 0
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.parsers: Response headers: {'ETag': '"851e29d5b40894a39171967c1ebab9a2"', 'Content-Length': '0', 'Date': 'Sat, 22 Feb 2020 06:45:31 GMT', 'x-amz-id-2': 'ZuJQ7b6x8iRWlwJNV5sQrFfpJcnylc5c7H01a7+WocgGJ3d1yzzJtS2DOOel8oAMOkvnYvDlba4=', 'x-amz-request-id': '2B2C5A6E5FEA17A3', 'Server': 'AmazonS3'}
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.parsers: Response body:#012b''
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <botocore.retryhandler.RetryHandler object at 0x74127ef0>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.retryhandler: No retry needed.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_error of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: Uploaded file daywind.png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: yearhilow.png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: yearbarometer.png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: daytempfeel.png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: #012response=s3.meta.client.upload_file(/var/www/html/MountWeather/daytempfeel.png,s3-archive.revittmk.aws.co.uk,daytempfeel.png)
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: #011#011ExtraArgs={'CacheControl': 300
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG user.s3upload: #011#011#011ContentType' : image/png
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3850>}) about to wait for the following futures []
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3850>}) done waiting for dependent futures
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3850>}) with kwargs {'request_executor': <s3transfer.futures.BoundedExecutor object at 0x740debb0>, 'config': <boto3.s3.transfer.TransferConfig object at 0x740d0170>, 'client': <botocore.client.S3 object at 0x74182e10>, 'osutil': <s3transfer.utils.OSUtils object at 0x740d0130>, 'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3850>}
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.futures: Submitting task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'daytempfeel.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) to executor <s3transfer.futures.BoundedExecutor object at 0x740debb0> for transfer request: 0.
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'daytempfeel.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) about to wait for the following futures []
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'daytempfeel.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) done waiting for dependent futures
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'daytempfeel.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) with kwargs {'bucket': 's3-archive.revittmk.aws.co.uk', 'fileobj': <s3transfer.utils.ReadFileChunk object at 0x740e3710>, 'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'daytempfeel.png', 'client': <botocore.client.S3 object at 0x74182e10>}
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_ascii_metadata at 0x744b9540>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function sse_md5 at 0x744b3f18>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function convert_body_to_file_like_object at 0x744b99c0>
Feb 22 06:45:30 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_bucket_name at 0x744b3ed0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_cache of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3ArnParamHandler.handle_arn of <botocore.utils.S3ArnParamHandler object at 0x74127f10>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function generate_idempotent_uuid at 0x744b3cd8>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function conditionally_calculate_md5 at 0x744b3e88>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function add_expect_header at 0x744b90c0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.handlers: Adding expect 100 continue header to request.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <bound method S3RegionRedirector.set_request_url of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function inject_api_version_header_if_needed at 0x744b9a50>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.endpoint: Making request for OperationModel(name=PutObject) with params: {'url': 'https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/daytempfeel.png', 'context': {'client_region': 'eu-west-2', 'client_config': <botocore.config.Config object at 0x74188130>, 'auth_type': None, 'signing': {'bucket': 's3-archive.revittmk.aws.co.uk'}, 'has_streaming_input': True}, 'body': <s3transfer.utils.ReadFileChunk object at 0x740e3710>, 'url_path': '/s3-archive.revittmk.aws.co.uk/daytempfeel.png', 'query_string': {}, 'headers': {'Content-Type': 'image/png', 'User-Agent': 'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource', 'Content-MD5': 'cnHlc6sABXs6/uvvvLdUOw==', 'Cache-Control': '300', 'x-amz-acl': 'public-read', 'Expect': '100-continue'}, 'method': 'PUT'}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_not_transferring at 0x7417f150>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <bound method RequestSigner.handler of <botocore.signers.RequestSigner object at 0x74188170>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event choose-signer.s3.PutObject: calling handler <function set_operation_specific_signer at 0x744b3c48>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-sign.s3.PutObject: calling handler <bound method S3EndpointSetter.set_endpoint of <botocore.utils.S3EndpointSetter object at 0x74127f50>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.utils: Checking for DNS compatible bucket for: https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/daytempfeel.png
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.utils: Not changing URI, bucket is not DNS compatible: s3-archive.revittmk.aws.co.uk
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: Calculating signature using v4 auth.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: StringToSign:#012AWS4-HMAC-SHA256#01220200222T064531Z#01220200222/eu-west-2/s3/aws4_request#01223656c05d0d2d705c73bfae15f0ae658c2c9dc184c13258ee011b38cc2f9198b
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: Signature:#0127a9afa6b7be8e6782112a8a8ef5df578736551d0acf112f2716a24cee3ddb846
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_transferring at 0x7417f198>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.endpoint: Sending http request: <AWSPreparedRequest stream_output=False, method=PUT, url=https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/daytempfeel.png, headers={'Content-Length': '10861', 'X-Amz-Content-SHA256': b'UNSIGNED-PAYLOAD', 'Cache-Control': b'300', 'Expect': b'100-continue', 'Content-Type': b'image/png', 'X-Amz-Date': b'20200222T064531Z', 'Content-MD5': b'cnHlc6sABXs6/uvvvLdUOw==', 'Authorization': b'AWS4-HMAC-SHA256 Credential=AKIAI7G5EWMRIJXE77FQ/20200222/eu-west-2/s3/aws4_request, SignedHeaders=cache-control;content-md5;content-type;host;x-amz-acl;x-amz-content-sha256;x-amz-date, Signature=7a9afa6b7be8e6782112a8a8ef5df578736551d0acf112f2716a24cee3ddb846', 'x-amz-acl': b'public-read', 'User-Agent': b'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource'}>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.awsrequest: Waiting for 100 Continue response.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.awsrequest: 100 Continue response seen, now sending request body.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG urllib3.connectionpool: https://s3.eu-west-2.amazonaws.com:443 "PUT /s3-archive.revittmk.aws.co.uk/daytempfeel.png HTTP/1.1" 200 0
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.parsers: Response headers: {'ETag': '"7271e573ab00057b3afeebefbcb7543b"', 'Content-Length': '0', 'Date': 'Sat, 22 Feb 2020 06:45:32 GMT', 'x-amz-id-2': 'VQjBGCGPMLGSLSUnlCkCURc3+jWVV0KPSiq4dQ9OZ4zRJJwVfOZ1hDRuv01dvAm+fcxF5crsrVs=', 'x-amz-request-id': 'E24B6812AB97D926', 'Server': 'AmazonS3'}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.parsers: Response body:#012b''
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <botocore.retryhandler.RetryHandler object at 0x74127ef0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.retryhandler: No retry needed.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_error of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: Uploaded file daytempfeel.png
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: celestial.html
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #012response=s3.meta.client.upload_file(/var/www/html/MountWeather/celestial.html,s3-archive.revittmk.aws.co.uk,celestial.html)
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #011#011ExtraArgs={'CacheControl': 300
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #011#011#011ContentType' : text/html
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3990>}) about to wait for the following futures []
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3990>}) done waiting for dependent futures
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3990>}) with kwargs {'request_executor': <s3transfer.futures.BoundedExecutor object at 0x740dec30>, 'config': <boto3.s3.transfer.TransferConfig object at 0x740debd0>, 'client': <botocore.client.S3 object at 0x74182e10>, 'osutil': <s3transfer.utils.OSUtils object at 0x740deb50>, 'transfer_future': <s3transfer.futures.TransferFuture object at 0x740e3990>}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.futures: Submitting task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'text/html', 'ACL': 'public-read'}, 'key': 'celestial.html', 'bucket': 's3-archive.revittmk.aws.co.uk'}) to executor <s3transfer.futures.BoundedExecutor object at 0x740dec30> for transfer request: 0.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'text/html', 'ACL': 'public-read'}, 'key': 'celestial.html', 'bucket': 's3-archive.revittmk.aws.co.uk'}) about to wait for the following futures []
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'text/html', 'ACL': 'public-read'}, 'key': 'celestial.html', 'bucket': 's3-archive.revittmk.aws.co.uk'}) done waiting for dependent futures
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'text/html', 'ACL': 'public-read'}, 'key': 'celestial.html', 'bucket': 's3-archive.revittmk.aws.co.uk'}) with kwargs {'bucket': 's3-archive.revittmk.aws.co.uk', 'fileobj': <s3transfer.utils.ReadFileChunk object at 0x74092ed0>, 'extra_args': {'CacheControl': '300', 'ContentType': 'text/html', 'ACL': 'public-read'}, 'key': 'celestial.html', 'client': <botocore.client.S3 object at 0x74182e10>}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_ascii_metadata at 0x744b9540>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function sse_md5 at 0x744b3f18>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function convert_body_to_file_like_object at 0x744b99c0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_bucket_name at 0x744b3ed0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_cache of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3ArnParamHandler.handle_arn of <botocore.utils.S3ArnParamHandler object at 0x74127f10>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function generate_idempotent_uuid at 0x744b3cd8>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function conditionally_calculate_md5 at 0x744b3e88>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function add_expect_header at 0x744b90c0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.handlers: Adding expect 100 continue header to request.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <bound method S3RegionRedirector.set_request_url of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function inject_api_version_header_if_needed at 0x744b9a50>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.endpoint: Making request for OperationModel(name=PutObject) with params: {'url': 'https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/celestial.html', 'context': {'client_region': 'eu-west-2', 'client_config': <botocore.config.Config object at 0x74188130>, 'auth_type': None, 'signing': {'bucket': 's3-archive.revittmk.aws.co.uk'}, 'has_streaming_input': True}, 'body': <s3transfer.utils.ReadFileChunk object at 0x74092ed0>, 'url_path': '/s3-archive.revittmk.aws.co.uk/celestial.html', 'query_string': {}, 'headers': {'Content-Type': 'text/html', 'User-Agent': 'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource', 'Content-MD5': 'svUjLKTaV+jMoKYWgrg1Pw==', 'Cache-Control': '300', 'x-amz-acl': 'public-read', 'Expect': '100-continue'}, 'method': 'PUT'}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_not_transferring at 0x7417f150>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <bound method RequestSigner.handler of <botocore.signers.RequestSigner object at 0x74188170>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event choose-signer.s3.PutObject: calling handler <function set_operation_specific_signer at 0x744b3c48>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-sign.s3.PutObject: calling handler <bound method S3EndpointSetter.set_endpoint of <botocore.utils.S3EndpointSetter object at 0x74127f50>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.utils: Checking for DNS compatible bucket for: https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/celestial.html
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.utils: Not changing URI, bucket is not DNS compatible: s3-archive.revittmk.aws.co.uk
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: Calculating signature using v4 auth.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: StringToSign:#012AWS4-HMAC-SHA256#01220200222T064531Z#01220200222/eu-west-2/s3/aws4_request#0129afc442af9c4b3d015b920f9ca683a705f84dffc23379c39cee7702a0493d42f
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: Signature:#012bcc109fc70c9c6e85ffe75cb184a15ce22267db399208cb23526d6c0b1dda1c5
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_transferring at 0x7417f198>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.endpoint: Sending http request: <AWSPreparedRequest stream_output=False, method=PUT, url=https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/celestial.html, headers={'Content-Length': '9387', 'X-Amz-Content-SHA256': b'UNSIGNED-PAYLOAD', 'Cache-Control': b'300', 'Expect': b'100-continue', 'Content-Type': b'text/html', 'X-Amz-Date': b'20200222T064531Z', 'Content-MD5': b'svUjLKTaV+jMoKYWgrg1Pw==', 'Authorization': b'AWS4-HMAC-SHA256 Credential=AKIAI7G5EWMRIJXE77FQ/20200222/eu-west-2/s3/aws4_request, SignedHeaders=cache-control;content-md5;content-type;host;x-amz-acl;x-amz-content-sha256;x-amz-date, Signature=bcc109fc70c9c6e85ffe75cb184a15ce22267db399208cb23526d6c0b1dda1c5', 'x-amz-acl': b'public-read', 'User-Agent': b'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource'}>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.awsrequest: Waiting for 100 Continue response.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.awsrequest: 100 Continue response seen, now sending request body.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG urllib3.connectionpool: https://s3.eu-west-2.amazonaws.com:443 "PUT /s3-archive.revittmk.aws.co.uk/celestial.html HTTP/1.1" 200 0
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.parsers: Response headers: {'ETag': '"b2f5232ca4da57e8cca0a61682b8353f"', 'Content-Length': '0', 'Date': 'Sat, 22 Feb 2020 06:45:32 GMT', 'x-amz-id-2': 'rI4GlE2JN8MqDd2hzWPr4ZrjgxNYygmnoJZxwlJ50BDR86T1DPtoAgnNUg45ZOCcflazjAFwfBs=', 'x-amz-request-id': 'DB97BBC456F9992D', 'Server': 'AmazonS3'}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.parsers: Response body:#012b''
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <botocore.retryhandler.RetryHandler object at 0x74127ef0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.retryhandler: No retry needed.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_error of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: Uploaded file celestial.html
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: seasons.css
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #012response=s3.meta.client.upload_file(/var/www/html/MountWeather/seasons.css,s3-archive.revittmk.aws.co.uk,seasons.css)
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #011#011ExtraArgs={'CacheControl': 300
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #011#011#011ContentType' : text/css
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x74092d90>}) about to wait for the following futures []
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x74092d90>}) done waiting for dependent futures
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x74092d90>}) with kwargs {'request_executor': <s3transfer.futures.BoundedExecutor object at 0x740deaf0>, 'config': <boto3.s3.transfer.TransferConfig object at 0x740d0150>, 'client': <botocore.client.S3 object at 0x74182e10>, 'osutil': <s3transfer.utils.OSUtils object at 0x740d0170>, 'transfer_future': <s3transfer.futures.TransferFuture object at 0x74092d90>}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.futures: Submitting task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'text/css', 'ACL': 'public-read'}, 'key': 'seasons.css', 'bucket': 's3-archive.revittmk.aws.co.uk'}) to executor <s3transfer.futures.BoundedExecutor object at 0x740deaf0> for transfer request: 0.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'text/css', 'ACL': 'public-read'}, 'key': 'seasons.css', 'bucket': 's3-archive.revittmk.aws.co.uk'}) about to wait for the following futures []
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'text/css', 'ACL': 'public-read'}, 'key': 'seasons.css', 'bucket': 's3-archive.revittmk.aws.co.uk'}) done waiting for dependent futures
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'text/css', 'ACL': 'public-read'}, 'key': 'seasons.css', 'bucket': 's3-archive.revittmk.aws.co.uk'}) with kwargs {'bucket': 's3-archive.revittmk.aws.co.uk', 'fileobj': <s3transfer.utils.ReadFileChunk object at 0x740929f0>, 'extra_args': {'CacheControl': '300', 'ContentType': 'text/css', 'ACL': 'public-read'}, 'key': 'seasons.css', 'client': <botocore.client.S3 object at 0x74182e10>}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_ascii_metadata at 0x744b9540>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function sse_md5 at 0x744b3f18>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function convert_body_to_file_like_object at 0x744b99c0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_bucket_name at 0x744b3ed0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_cache of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3ArnParamHandler.handle_arn of <botocore.utils.S3ArnParamHandler object at 0x74127f10>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function generate_idempotent_uuid at 0x744b3cd8>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function conditionally_calculate_md5 at 0x744b3e88>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function add_expect_header at 0x744b90c0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.handlers: Adding expect 100 continue header to request.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <bound method S3RegionRedirector.set_request_url of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function inject_api_version_header_if_needed at 0x744b9a50>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.endpoint: Making request for OperationModel(name=PutObject) with params: {'url': 'https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/seasons.css', 'context': {'client_region': 'eu-west-2', 'client_config': <botocore.config.Config object at 0x74188130>, 'auth_type': None, 'signing': {'bucket': 's3-archive.revittmk.aws.co.uk'}, 'has_streaming_input': True}, 'body': <s3transfer.utils.ReadFileChunk object at 0x740929f0>, 'url_path': '/s3-archive.revittmk.aws.co.uk/seasons.css', 'query_string': {}, 'headers': {'Content-Type': 'text/css', 'User-Agent': 'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource', 'Content-MD5': 'q89naz5Hcr7vAC6I74Z8aQ==', 'Cache-Control': '300', 'x-amz-acl': 'public-read', 'Expect': '100-continue'}, 'method': 'PUT'}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_not_transferring at 0x7417f150>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <bound method RequestSigner.handler of <botocore.signers.RequestSigner object at 0x74188170>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event choose-signer.s3.PutObject: calling handler <function set_operation_specific_signer at 0x744b3c48>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-sign.s3.PutObject: calling handler <bound method S3EndpointSetter.set_endpoint of <botocore.utils.S3EndpointSetter object at 0x74127f50>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.utils: Checking for DNS compatible bucket for: https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/seasons.css
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.utils: Not changing URI, bucket is not DNS compatible: s3-archive.revittmk.aws.co.uk
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: Calculating signature using v4 auth.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: StringToSign:#012AWS4-HMAC-SHA256#01220200222T064531Z#01220200222/eu-west-2/s3/aws4_request#0121bb390a3fec6118cd7afeba2e3444d07f205eed42198cd99e00666e43dd1d89e
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: Signature:#012f54cba281a3dd4c0a4761f42735a6c32b0983da864e0a73d5c95d705af125502
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_transferring at 0x7417f198>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.endpoint: Sending http request: <AWSPreparedRequest stream_output=False, method=PUT, url=https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/seasons.css, headers={'Content-Length': '3706', 'X-Amz-Content-SHA256': b'UNSIGNED-PAYLOAD', 'Cache-Control': b'300', 'Expect': b'100-continue', 'Content-Type': b'text/css', 'X-Amz-Date': b'20200222T064531Z', 'Content-MD5': b'q89naz5Hcr7vAC6I74Z8aQ==', 'Authorization': b'AWS4-HMAC-SHA256 Credential=AKIAI7G5EWMRIJXE77FQ/20200222/eu-west-2/s3/aws4_request, SignedHeaders=cache-control;content-md5;content-type;host;x-amz-acl;x-amz-content-sha256;x-amz-date, Signature=f54cba281a3dd4c0a4761f42735a6c32b0983da864e0a73d5c95d705af125502', 'x-amz-acl': b'public-read', 'User-Agent': b'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource'}>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.awsrequest: Waiting for 100 Continue response.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.awsrequest: 100 Continue response seen, now sending request body.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG urllib3.connectionpool: https://s3.eu-west-2.amazonaws.com:443 "PUT /s3-archive.revittmk.aws.co.uk/seasons.css HTTP/1.1" 200 0
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.parsers: Response headers: {'ETag': '"abcf676b3e4772beef002e88ef867c69"', 'Content-Length': '0', 'Date': 'Sat, 22 Feb 2020 06:45:32 GMT', 'x-amz-id-2': '4E25vXbhKBGo03aX1bhilNjl4eL3T0LigB2oQJYh3Y7JS8u5rcoNSG8v/UBXtBe/6dHuw7XMwUY=', 'x-amz-request-id': '37AD418E28E25F1F', 'Server': 'AmazonS3'}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.parsers: Response body:#012b''
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <botocore.retryhandler.RetryHandler object at 0x74127ef0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.retryhandler: No retry needed.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_error of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: Uploaded file seasons.css
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: monthtempdew.png
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #012response=s3.meta.client.upload_file(/var/www/html/MountWeather/monthtempdew.png,s3-archive.revittmk.aws.co.uk,monthtempdew.png)
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #011#011ExtraArgs={'CacheControl': 300
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #011#011#011ContentType' : image/png
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x74092c50>}) about to wait for the following futures []
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x74092c50>}) done waiting for dependent futures
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task UploadSubmissionTask(transfer_id=0, {'transfer_future': <s3transfer.futures.TransferFuture object at 0x74092c50>}) with kwargs {'request_executor': <s3transfer.futures.BoundedExecutor object at 0x740dedd0>, 'config': <boto3.s3.transfer.TransferConfig object at 0x740dec70>, 'client': <botocore.client.S3 object at 0x74182e10>, 'osutil': <s3transfer.utils.OSUtils object at 0x740dec50>, 'transfer_future': <s3transfer.futures.TransferFuture object at 0x74092c50>}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.futures: Submitting task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'monthtempdew.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) to executor <s3transfer.futures.BoundedExecutor object at 0x740dedd0> for transfer request: 0.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'monthtempdew.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) about to wait for the following futures []
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'monthtempdew.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) done waiting for dependent futures
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.tasks: Executing task PutObjectTask(transfer_id=0, {'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'monthtempdew.png', 'bucket': 's3-archive.revittmk.aws.co.uk'}) with kwargs {'bucket': 's3-archive.revittmk.aws.co.uk', 'fileobj': <s3transfer.utils.ReadFileChunk object at 0x74092ad0>, 'extra_args': {'CacheControl': '300', 'ContentType': 'image/png', 'ACL': 'public-read'}, 'key': 'monthtempdew.png', 'client': <botocore.client.S3 object at 0x74182e10>}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_ascii_metadata at 0x744b9540>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function sse_md5 at 0x744b3f18>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function convert_body_to_file_like_object at 0x744b99c0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function validate_bucket_name at 0x744b3ed0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_cache of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <bound method S3ArnParamHandler.handle_arn of <botocore.utils.S3ArnParamHandler object at 0x74127f10>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-parameter-build.s3.PutObject: calling handler <function generate_idempotent_uuid at 0x744b3cd8>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function conditionally_calculate_md5 at 0x744b3e88>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function add_expect_header at 0x744b90c0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.handlers: Adding expect 100 continue header to request.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <bound method S3RegionRedirector.set_request_url of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-call.s3.PutObject: calling handler <function inject_api_version_header_if_needed at 0x744b9a50>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.endpoint: Making request for OperationModel(name=PutObject) with params: {'url': 'https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/monthtempdew.png', 'context': {'client_region': 'eu-west-2', 'client_config': <botocore.config.Config object at 0x74188130>, 'auth_type': None, 'signing': {'bucket': 's3-archive.revittmk.aws.co.uk'}, 'has_streaming_input': True}, 'body': <s3transfer.utils.ReadFileChunk object at 0x74092ad0>, 'url_path': '/s3-archive.revittmk.aws.co.uk/monthtempdew.png', 'query_string': {}, 'headers': {'Content-Type': 'image/png', 'User-Agent': 'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource', 'Content-MD5': '4ogc0eXCmC/epHIv3iHFhA==', 'Cache-Control': '300', 'x-amz-acl': 'public-read', 'Expect': '100-continue'}, 'method': 'PUT'}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_not_transferring at 0x7417f150>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <bound method RequestSigner.handler of <botocore.signers.RequestSigner object at 0x74188170>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event choose-signer.s3.PutObject: calling handler <function set_operation_specific_signer at 0x744b3c48>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event before-sign.s3.PutObject: calling handler <bound method S3EndpointSetter.set_endpoint of <botocore.utils.S3EndpointSetter object at 0x74127f50>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.utils: Checking for DNS compatible bucket for: https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/monthtempdew.png
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.utils: Not changing URI, bucket is not DNS compatible: s3-archive.revittmk.aws.co.uk
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: Calculating signature using v4 auth.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: StringToSign:#012AWS4-HMAC-SHA256#01220200222T064531Z#01220200222/eu-west-2/s3/aws4_request#012a9f51b17c92c727c36d34ecbe8a50d60e63ff5eac301fc0ef76687926d571974
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.auth: Signature:#01228670f4c03955118cfed67cd6b81a42c2f5fae0f87f15fa262a8e3c4e3fe0410
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event request-created.s3.PutObject: calling handler <function signal_transferring at 0x7417f198>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.endpoint: Sending http request: <AWSPreparedRequest stream_output=False, method=PUT, url=https://s3.eu-west-2.amazonaws.com/s3-archive.revittmk.aws.co.uk/monthtempdew.png, headers={'Content-Length': '14045', 'X-Amz-Content-SHA256': b'UNSIGNED-PAYLOAD', 'Cache-Control': b'300', 'Expect': b'100-continue', 'Content-Type': b'image/png', 'X-Amz-Date': b'20200222T064531Z', 'Content-MD5': b'4ogc0eXCmC/epHIv3iHFhA==', 'Authorization': b'AWS4-HMAC-SHA256 Credential=AKIAI7G5EWMRIJXE77FQ/20200222/eu-west-2/s3/aws4_request, SignedHeaders=cache-control;content-md5;content-type;host;x-amz-acl;x-amz-content-sha256;x-amz-date, Signature=28670f4c03955118cfed67cd6b81a42c2f5fae0f87f15fa262a8e3c4e3fe0410', 'x-amz-acl': b'public-read', 'User-Agent': b'Boto3/1.12.0 Python/3.5.3 Linux/4.19.42-v7+ Botocore/1.15.0 Resource'}>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.awsrequest: Waiting for 100 Continue response.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.awsrequest: 100 Continue response seen, now sending request body.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG urllib3.connectionpool: https://s3.eu-west-2.amazonaws.com:443 "PUT /s3-archive.revittmk.aws.co.uk/monthtempdew.png HTTP/1.1" 200 0
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.parsers: Response headers: {'ETag': '"e2881cd1e5c2982fdea4722fde21c584"', 'Content-Length': '0', 'Date': 'Sat, 22 Feb 2020 06:45:32 GMT', 'x-amz-id-2': 'A+ClEHc2liTGOztHAdYhz0ya+v4GpNfYHDt96DoMiUGfRHwiuow0zYCvpzZ3HYzjCkYv5aAMwsY=', 'x-amz-request-id': '2D076FB80F09D688', 'Server': 'AmazonS3'}
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.parsers: Response body:#012b''
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <botocore.retryhandler.RetryHandler object at 0x74127ef0>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.retryhandler: No retry needed.
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG botocore.hooks: Event needs-retry.s3.PutObject: calling handler <bound method S3RegionRedirector.redirect_from_error of <botocore.utils.S3RegionRedirector object at 0x74127b30>>
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Releasing acquire 0/None
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: Uploaded file monthtempdew.png
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: tabular.html
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #012response=s3.meta.client.upload_file(/var/www/html/MountWeather/tabular.html,s3-archive.revittmk.aws.co.uk,tabular.html)
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #011#011ExtraArgs={'CacheControl': 300
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG user.s3upload: #011#011#011ContentType' : text/html
Feb 22 06:45:31 Rasberry weewx[25743] DEBUG s3transfer.utils: Acquiring 0

gjr80

unread,
Feb 22, 2020, 2:02:13 AM2/22/20
to weewx-user
Yep, here's the tell:

Feb 22 06:45:28 Rasberry weewx[25743] DEBUG weewx.reportengine: reportengine: Invalid report_timing setting for report 'AWS-S3', running report anyway
Feb 22 06:45:28 Rasberry weewx[25743] DEBUG weewx.reportengine:        ****  Invalid field '' in '5, ,0, ,*, ,*, ,*'

Pull down the latest from master and it will be fixed.

Gary
...

Mike Revitt

unread,
Feb 22, 2020, 5:00:55 AM2/22/20
to weewx...@googlegroups.com
Thanks Gary

Sent from my iPhone

Mike Revitt

Database Migration Specialist – Database Freedom

Amazon Web Services

erevi...@amazon.com | p+44.7825.063.466w:  aws.amazon.com


On 22 Feb 2020, at 07:02, gjr80 <gjrod...@gmail.com> wrote:


--
You received this message because you are subscribed to a topic in the Google Groups "weewx-user" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/weewx-user/I8J62As2GdI/unsubscribe.
To unsubscribe from this group and all its topics, send an email to weewx-user+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/f8ce356c-7918-4ae1-bf2b-a00a7699b9f5%40googlegroups.com.

Mike Revitt

unread,
Feb 23, 2020, 3:26:17 AM2/23/20
to weewx-user
I am running version weewx-4.0.0b12.tar.gz which is the latest version on the download page and looks like the latest version in Git.

I downloaded these  files on February 17th

...

gjr80

unread,
Feb 23, 2020, 3:40:35 AM2/23/20
to weewx-user
Problem is the tar.gz files are only built every so often (b12 was built on 8 February) but fixes are committed to Github regularly (the report timing fix was committed on 15 February). You can use git to clone the repo and install latest but if you haven’t been using git the easiest thing in this case is just to download the updated reportengine.py and use it in place of your present copy.

To download and replace reportengine.py:

1. Rename the existing /home/weewx/bin/weewx/reportengine.py to /home/weewx/bin/weewx/reportengine_orig.py

2. Download the updated reportengine.py:

$ wget -P /home/weewx/bin/weewx https://raw.githubusercontent.com/weewx/weewx/c0c6281010ff4633f6eec710c8f0d73451d58fe6/bin/weewx/reportengine.py

3. Restart WeeWX

If you encounter problems just delete /home/weewx/bin/weewx/reportengine.py and rename reportengine_orig.py back to reportengine.py then restart WeeWX.

Gary

Mike Revitt

unread,
Feb 23, 2020, 3:51:17 AM2/23/20
to weewx-user
Just done a Git Pull, and am running that, and indeed it has fixed the report_timing issue. 

Now running an extended test to determine if the core dump is also fixed. I am hoping that they were connected

Mike Revitt

unread,
Feb 23, 2020, 3:52:35 AM2/23/20
to weewx-user
My solution is also a variant on the FTP skin, actually based on the S3 skin I have been  creating

Mike Revitt

unread,
Feb 23, 2020, 4:00:09 AM2/23/20
to weewx-user
I have attached the python script I call

And this is the new section in weewx.conf
    [[S3-Backup]]
        # Using S3-Backup to copy the database file to a webserver is treated as just
        # another report, albeit one with an unusual report generator!
        skin = S3Backup
        enable = true

        # You must configure AWS at the command line and create some logon credentials
        # The logon credentials then go into the credentials file.
        # This is the name of the profile defined in that file that you use for the copy
        AWS_Profile = mike

        # This is the name of the region where the S3 bucket resides
        AWS_Region = eu-west-2

        # This is the name of the S3 bucket where the files will be copied
        S3_BUCKET = s3-archive.revittmk.aws.co.uk

        # This determins the frequency of the backup routine
        report_timing = 10,30,50 * * * *
        # @daily

s3backup.py
Reply all
Reply to author
Forward
0 new messages