I am guessing you mean my original code. I’ll recreate and attach shortly.
So, to recap. I had a service MyService that was augmenting loop packets 
with data. The standard processing of WeeWX accumulators was used to pull 
out the min/max/first/last values (and times of these) and update the 
archive record.
At first I was augmenting every loop packet with the min/max. But, I 
noticed that the min/max (and times) values were ‘bleeding’ into the next 
archive record. So, to mitigate that, I stopped putting the min/max (and 
times) in every loop packet. 
But there is still a slight chance that the last packet could ‘bleed’ into 
the next archive record (In my case, if there is a lightning strike in the 
last loop packet that has minimum distance smaller than any in the next 
archive interval). I admit it is slight, but it was enough to bother me….
rich
On Wednesday 9 October 2024 at 18:32:47 UTC-4 Tom Keffer wrote:

> Perhaps if you posted your code? I'm betting you could use the existing 
> accumulators to extract what you need from the collection of LOOP packets.
>
> On Wed, Oct 9, 2024 at 1:08 PM [email protected] <[email protected]> 
> wrote:
>
>> Tom,
>> I get life, no apologies necessary. I’m probably not following your 
>> thought, but here is what I think you are suggesting.
>> When MyService handles the NEW_LOOP_PACKET event, it checks if the data 
>> belongs to the current accumulator (or has a new archive interval started).
>> If it does belong to the current accumulator (current archive interval), 
>> it updates the current accumulator with the loop data.
>> If it does not belong (a new archive intervals has started), it creates a 
>> new accumulator and puts the data in that (keeping the old one around, 
>> similar to StdArchive (I think)).
>> When MyService handles the NEW_ARCHIVE_RECORD, it uses the ‘old’ 
>> accumulator to retrieve the desired values and updates the archive record.
>> The challenge I was facing: I could not figure out a good way for 
>> MyService to know anything about archive intervals in the NEW_LOOP_PACKET 
>> event handler.
>> rich
>>
>> On Wednesday 9 October 2024 at 11:51:22 UTC-4 Tom Keffer wrote:
>>
>>> Sorry, Rich, for not getting back to you sooner. Just got swamped with 
>>> another project.
>>>
>>> I can see how this can happen. If a LOOP packet arrives slightly after 
>>> the end of an archive interval, it most properly belongs to the previous 
>>> archive interval, but you're treating it as if it belongs to the next 
>>> interval. 
>>>
>>> Is there any reason why you can't use the accumulator machinery? It 
>>> already handles min and max values.
>>>
>>> You've probably already seen it but, in case you haven't, take a look at 
>>> the wiki article *Accumulators 
>>> <https://github.com/weewx/weewx/wiki/Accumulators>*. 
>>>
>>> -tk
>>>
>>>
>>> On Sat, Oct 5, 2024 at 4:46 PM [email protected] <[email protected]> 
>>> wrote:
>>>
>>>> So to close this out. I updated the service to capture the data via the 
>>>> NEW_LOOP_PACKET event. Then in the NEW_ARCHIVE_RECORD I only process event 
>>>> data that is in the archive interval. Essentially a ‘poor mans’ 
>>>> accumulator. 
>>>> This has stopped the ‘bleeding’ of data from a previous archive 
>>>> interval into the current interval.  I still need to write some more 
>>>> tests, 
>>>> but I am pretty confident this accomplishes what I desire.
>>>> rich
>>>>
>>>> On Sunday 22 September 2024 at 11:50:07 UTC-4 [email protected] wrote:
>>>>
>>>>> As a followup. When I flipped the order that StdEngine fires the 
>>>>> events, such that CHECK_LOOP is before NEW_LOOP this is what I observed.
>>>>> 1. A new loop packet is generated.
>>>>> 2. StdEngine fires the CHECK_LOOP event.
>>>>> 3. StdArchive handles the CHECK_LOOP.
>>>>>    a. The dateTime in the loop packet is greater than the end of the 
>>>>> archive period.
>>>>>    b. StdArchive fires the END_ARCHIVE_PERIOD event.
>>>>>    c. The dateTime is not greater than the end of the archive period + 
>>>>> the archive delay.
>>>>> 4. MyService handles the END_ARCHIVE_PERIOD.
>>>>>    a. Min values are reset to None, etc.
>>>>> 5. StdEngine fires a NEW_LOOP event
>>>>> 6. MyService handles the NEW_LOOP event.
>>>>>    a. It sees that no prior value exists
>>>>>    b. The current value in the loop packet is added to the loop packet 
>>>>> as min_value.
>>>>> 7. StdArchive handles the NEW_LOOP event.
>>>>>    a. It tries to add it to the accumulator.
>>>>>    b. The accumulator throws OutOfSpan exception
>>>>>    c. StdArchive creates a 'new' accumulator for the next archive 
>>>>> period.
>>>>>    d. StdArchive adds the loop packet to the accumulator,
>>>>>
>>>>> 8. Eventually a packet with dateTime >= the end of archive period + 
>>>>> archive delay is generated.
>>>>>    a. This causes StdArchive (in CHECK_LOOP) to raise the BREAKLOOP 
>>>>> exception
>>>>>    b. StdEngine handles the exception, raising POST_LOOP; allowing 
>>>>> things like reports to run etc.
>>>>>  
>>>>> Again, not saying that changing the order that events are fired should 
>>>>> be taken lightly.
>>>>>   rich
>>>>>
>>>>> On Sunday 22 September 2024 at 11:28:28 UTC-4 [email protected] wrote:
>>>>>
>>>>>> Tom,
>>>>>> Thanks for the pointer. That is what I am attempting to do. Here is 
>>>>>> what I THINK is my problem. See 4.d below.
>>>>>> 1. A new loop packet is generated.
>>>>>> 2. StdEngine fires a NEW_LOOP event
>>>>>> 3. MyService handles the NEW_LOOP event.
>>>>>>    a. It sees that a prior value is less then the current value in 
>>>>>> the loop packet.
>>>>>>    b. The prior value is added to the loop packet as min_value.
>>>>>> 4. StdArchive handles the NEW_LOOP event.
>>>>>>    a. It tries to add it to the accumulator.
>>>>>>    b. The accumulator throws OutOfSpan exception
>>>>>>    c. StdArchive creates a 'new' accumulator for the next archive 
>>>>>> period.
>>>>>>    d. StdArchive adds the loop packet (which has been updated with 
>>>>>> prior loop packet data) to the accumulator,
>>>>>> 5. StdEngine fires the CHECK_LOOP event.
>>>>>> 6. StdArchive handles the CHECK_LOOP.
>>>>>>    a. The dateTime in the loop packet is greater than the end of the 
>>>>>> archive period.
>>>>>>    b. StdArchive fires the END_ARCHIVE_PERIOD event.
>>>>>>    c. The dateTime is not greater than the end of the archive period 
>>>>>> + the archive delay.
>>>>>> 7. MyService handles the END_ARCHIVE_PERIOD.
>>>>>>    a. Min values are reset to None, etc.
>>>>>>    
>>>>>>    
>>>>>> 8. Eventually a packet with dateTime >= the end of archive period + 
>>>>>> archive delay is generated.
>>>>>>    a. This causes StdArchive (in CHECK_LOOP) to raise the BREAKLOOP 
>>>>>> exception
>>>>>>    b. StdEngine handles the exception, raising POST_LOOP; allowing 
>>>>>> things like reports to run etc.
>>>>>>  
>>>>>>   rich
>>>>>>
>>>>>> On Sunday 22 September 2024 at 11:00:00 UTC-4 Tom Keffer wrote:
>>>>>>
>>>>>>> Take a look at the Vantage device driver. In addition to a standard 
>>>>>>> device driver, it includes a service, VantageService, that participates 
>>>>>>> in 
>>>>>>> the weewxd event loop. It binds to STARTUP, NEW_LOOP_PACKET, and 
>>>>>>> END_ARCHIVE_PERIOD. The first two are used to reset wind gust values, 
>>>>>>> the 
>>>>>>> last to update the archive record with the max wind seen.
>>>>>>>
>>>>>>> I think this is pretty similar to what you're trying to do.
>>>>>>>
>>>>>>> -tk
>>>>>>>
>>>>>>> On Saturday, September 21, 2024 at 5:01:26 PM UTC-7 
>>>>>>> [email protected] wrote:
>>>>>>>
>>>>>>>>
>>>>>>>> Goal: Capture the min value and time of lightning strikes.
>>>>>>>>
>>>>>>>> I started out binding to the PRE_LOOP and NEW_LOOP_PACKET events. 
>>>>>>>> When the PRE_LOOP event is handled, the min value and time were reset. 
>>>>>>>> In 
>>>>>>>> the handling of the NEW_LOOP_PACKET event, the comparison is done and 
>>>>>>>> the 
>>>>>>>> loop packet is updated as necessary. I 'quickly' realized that 
>>>>>>>> PRE_LOOP and 
>>>>>>>> POST_LOOP events have nothing to do with the archive period.
>>>>>>>>
>>>>>>>> The END_ARCHIVE_PERIOD event looked promising. Resetting of the 
>>>>>>>> value and time could be done here. But when I analyze the order of 
>>>>>>>> event 
>>>>>>>> firing, this is what I am seeing.
>>>>>>>> 2024-09-21 11:44:59  weewxd[4036220] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 11:44:59  weewxd[4036220] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726933499 2024-09-21 11:44:59
>>>>>>>> 2024-09-21 11:44:59  weewxd[4036220] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 11:44:59  weewxd[4036220] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726933499 2024-09-21 11:44:59
>>>>>>>> 2024-09-21 11:45:01  weewxd[4036220] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 11:45:01  weewxd[4036220] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726933502 2024-09-21 11:45:02
>>>>>>>> 2024-09-21 11:45:01  weewxd[4036220] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 11:45:01  weewxd[4036220] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726933502 2024-09-21 11:45:02
>>>>>>>> 2024-09-21 11:45:01  weewxd[4036220] DEBUG user.observationtime: 
>>>>>>>> RMBx: In end_archive_period
>>>>>>>> 2024-09-21 11:45:04  weewxd[4036220] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 11:45:04  weewxd[4036220] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726933504 2024-09-21 11:45:04
>>>>>>>> This will result in the first packet (1726933502) of the archive 
>>>>>>>> period using the data from the previous archive period.
>>>>>>>>
>>>>>>>> Flipping the order in engine.py to the following:
>>>>>>>>     for packet in self.console.genLoopPackets():
>>>>>>>>         # Allow services to break the loop by throwing
>>>>>>>>         # an exception:
>>>>>>>>         self.dispatchEvent(weewx.Event(weewx.CHECK_LOOP, 
>>>>>>>> packet=packet))
>>>>>>>>
>>>>>>>>         # Package the packet as an event, then dispatch it.
>>>>>>>>         self.dispatchEvent(weewx.Event(weewx.NEW_LOOP_PACKET, 
>>>>>>>> packet=packet))
>>>>>>>>
>>>>>>>> I would have expected to see the last packet in an archive period 
>>>>>>>> not being processed. But, I was not seeing that. So I added a bit more 
>>>>>>>> logging to try to understand what was going on. This is what I saw. 
>>>>>>>> Sorry, 
>>>>>>>> it is a bit long, I made a couple of comments with <---.
>>>>>>>>  
>>>>>>>> 2024-09-21 19:39:58  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:39:58  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726961999 2024-09-21 19:39:59
>>>>>>>> 2024-09-21 19:39:58  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726961999 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962000  35
>>>>>>>> 2024-09-21 19:39:58  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:39:58  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726961999 2024-09-21 19:39:59
>>>>>>>> 2024-09-21 19:39:58  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:01  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:01  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962001 2024-09-21 19:40:01
>>>>>>>> 2024-09-21 19:40:01  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962001 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962000  35
>>>>>>>> 2024-09-21 19:40:01  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>> RMBx: In end_archive_period <--- END_ARCHIVE_PERIOD event must have 
>>>>>>>> fired
>>>>>>>> 2024-09-21 19:40:01  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:01  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962001 2024-09-21 19:40:01 <--- And the 
>>>>>>>> NEW_LOOP_PACKET has fired afterward
>>>>>>>> 2024-09-21 19:40:01  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:03  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop <--- processing of even packets continues
>>>>>>>> 2024-09-21 19:40:03  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962004 2024-09-21 19:40:04
>>>>>>>> 2024-09-21 19:40:03  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962004 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:03  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:03  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962004 2024-09-21 19:40:04
>>>>>>>> 2024-09-21 19:40:03  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:06  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:06  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962006 2024-09-21 19:40:06
>>>>>>>> 2024-09-21 19:40:06  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962006 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:06  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:06  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962006 2024-09-21 19:40:06
>>>>>>>> 2024-09-21 19:40:06  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:08  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:08  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962009 2024-09-21 19:40:09
>>>>>>>> 2024-09-21 19:40:08  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962009 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:08  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:08  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962009 2024-09-21 19:40:09
>>>>>>>> 2024-09-21 19:40:08  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:11  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:11  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962011 2024-09-21 19:40:11
>>>>>>>> 2024-09-21 19:40:11  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962011 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:11  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:11  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962011 2024-09-21 19:40:11
>>>>>>>> 2024-09-21 19:40:11  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:13  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:13  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962014 2024-09-21 19:40:14
>>>>>>>> 2024-09-21 19:40:13  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962014 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:13  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:13  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962014 2024-09-21 19:40:14
>>>>>>>> 2024-09-21 19:40:13  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:16  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:16  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962016 2024-09-21 19:40:16
>>>>>>>> 2024-09-21 19:40:16  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962016 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:16  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:16  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962016 2024-09-21 19:40:16
>>>>>>>> 2024-09-21 19:40:16  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:18  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:18  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962019 2024-09-21 19:40:19
>>>>>>>> 2024-09-21 19:40:18  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962019 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:18  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:18  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962019 2024-09-21 19:40:19
>>>>>>>> 2024-09-21 19:40:18  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:21  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:21  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962021 2024-09-21 19:40:21
>>>>>>>> 2024-09-21 19:40:21  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962021 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:21  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:21  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962021 2024-09-21 19:40:21
>>>>>>>> 2024-09-21 19:40:21  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:23  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:23  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962024 2024-09-21 19:40:24
>>>>>>>> 2024-09-21 19:40:23  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962024 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:23  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:23  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962024 2024-09-21 19:40:24
>>>>>>>> 2024-09-21 19:40:23  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:26  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:26  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962026 2024-09-21 19:40:26
>>>>>>>> 2024-09-21 19:40:26  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962026 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:26  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:26  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962026 2024-09-21 19:40:26
>>>>>>>> 2024-09-21 19:40:26  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:28  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:28  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962029 2024-09-21 19:40:29
>>>>>>>> 2024-09-21 19:40:28  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962029 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:28  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:28  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962029 2024-09-21 19:40:29
>>>>>>>> 2024-09-21 19:40:28  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:31  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:31  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962031 2024-09-21 19:40:31
>>>>>>>> 2024-09-21 19:40:31  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962031 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:31  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:31  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962031 2024-09-21 19:40:31
>>>>>>>> 2024-09-21 19:40:31  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:33  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:33  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962034 2024-09-21 19:40:34
>>>>>>>> 2024-09-21 19:40:33  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962034 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:33  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In new_loop_packet
>>>>>>>> 2024-09-21 19:40:33  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962034 2024-09-21 19:40:34
>>>>>>>> 2024-09-21 19:40:33  weewxd[235236] DEBUG weewx.engine: RMBx: in 
>>>>>>>> new_loop_packet (StdArchive)
>>>>>>>> 2024-09-21 19:40:36  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:36  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962036 2024-09-21 19:40:36
>>>>>>>> 2024-09-21 19:40:36  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> check_loop (StdArchive) packet dateTime: 1726962036 
>>>>>>>> end_archive_delay_ts: 
>>>>>>>> 1726962035  1726962300  35
>>>>>>>> 2024-09-21 19:40:36  weewxd[235236] DEBUG weewx.engine: RMBx: 
>>>>>>>> Raising BreakLoop 1726962036 1726962035 <--- due to archive_delay, the 
>>>>>>>> loop 
>>>>>>>> is 'finally' broken and the archive record can be processed.
>>>>>>>> 2024-09-21 19:40:36  weewxd[235236] DEBUG weewx.engine: RMBx: 
>>>>>>>> handling BreakLoop exception
>>>>>>>> 2024-09-21 19:40:36  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>> RMBx: In post_loop
>>>>>>>> 2024-09-21 19:40:36  weewxd[235236] DEBUG weewx.engine: RMBx: In 
>>>>>>>> post_loop (StdArchive)
>>>>>>>> 2024-09-21 19:40:36  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>> RMBx: In new_archive_record <--- processing the new archive record
>>>>>>>> 2024-09-21 19:40:56  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>> RMBx: In pre_loop
>>>>>>>> 2024-09-21 19:40:56  weewxd[235236] DEBUG user.observationtime: 
>>>>>>>>  RMB: In check_loop
>>>>>>>> 2024-09-21 19:40:56  weewxd[235236] DEBUG user.observationtime:   
>>>>>>>> RMB: packet dateTime: 1726962039 2024-09-21 19:40:39
>>>>>>>>
>>>>>>>> Because of the archive_delay, the last packet goes into the correct 
>>>>>>>> archive record and the END_ARCHIVE_PERIOD event fires before the 
>>>>>>>> NEW_LOOP_PACKET event is fired.
>>>>>>>>         
>>>>>>>> I realize that changing the order of events firing can have big 
>>>>>>>> impact to existing code, but I am curious about possibly making this 
>>>>>>>> change? It seems to me that this should only impact anyone that wants 
>>>>>>>> the 
>>>>>>>> END_ARCHIVE_PERIOD event to fire before the next packet's 
>>>>>>>> NEW_LOOP_PACKET 
>>>>>>>> is fired. Not sure if that is important to anyone... Or is there a 
>>>>>>>> better/more WeeWX way of accomplishing what I desire? 
>>>>>>>> If no changes are made to WeeWX, my current thought is to capture 
>>>>>>>> the data via the NEW_LOOP_PACKET and perform the processing via the 
>>>>>>>> NEW_ARCHIVE_RECORD event and only update the archive record with the 
>>>>>>>> min 
>>>>>>>> value and time. This would certainly work for me.
>>>>>>>>
>>>>>>>> Thanks. rich
>>>>>>>>
>>>>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "weewx-development" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/weewx-development/d5388801-335e-482e-acc0-2fff84cd3633n%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/weewx-development/d5388801-335e-482e-acc0-2fff84cd3633n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "weewx-development" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>>
> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/weewx-development/cdd39a81-25de-4faf-b383-8d5420041d83n%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/weewx-development/cdd39a81-25de-4faf-b383-8d5420041d83n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-development/b185b648-cdcb-4d22-a9f0-4daa7b46b2edn%40googlegroups.com.

Reply via email to