You are right can read my mind :

Here is the report :

#errorCatcher Echo
#import weewx.uwxutils as utils
#import user.weathercalc as wc
#set $D="%d/%m/%y"
#set $Time="%I:%M%p" 
#set $N50f="%5.0f"
#set $N51f="%5.1f"
#set $N52f="%5.2f"
#set $NONE0F="0"
#set $NONE1F="0.0"
#set $NA="N/A"
#set $NONE2F="0.00"
#set $NONE3F="0.000"
#def formatTime($raw):
#from datetime import datetime
#echo 
$datetime.fromtimestamp($raw).strftime("%-I:%M%p").lower().rstrip('m').rjust(6)
#end def
                  Temp     Hi    Low   Out    Dew  Wind  Wind   Wind    Hi 
   Hi   Wind   Heat    THW                Rain    Heat    Cool    In     In 
   In     In     In   In Air  Wind  Wind    ISS   Arc.
  Date    Time     Out   Temp   Temp   Hum    Pt. Speed   Dir    Run Speed 
  Dir  Chill  Index  Index   Bar    Rain  Rate    D-D     D-D    Temp   Hum 
   Dew   Heat    EMC Density  Samp   Tx   Recept  Int.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

#for $_span in $last2days
$_span.start.format($D) #slurp ## DATE
$self.formatTime($_span.start.raw) #slurp ## TIME
$_span.outTemp.avg.nolabel($N51f,$NONE1F).rjust(6) #slurp ## TEMP OUT
$_span.outTemp.max.nolabel($N51f,$NONE1F).rjust(6) #slurp ## HI TEMP
$_span.outTemp.min.nolabel($N51f,$NONE1F).rjust(6) #slurp ## LOW TEMP
$_span.outHumidity.avg.nolabel($N50f,$NONE1F).rjust(5) #slurp ## OUT HUM
$_span.dewpoint.avg.nolabel($N51f,$NONE1F).rjust(6) #slurp ## DEW PT.
$_span.windSpeed.avg.nolabel($N51f,$NONE1F).rjust(5) #slurp ## WIND SPEED
$_span.windDir.avg.ordinal_compass.format(None_string="---").rjust(5) #slurp 
## WIND DIR
$_span.windrun.sum.nolabel($N52f,$NONE2F).rjust(6) #slurp ## WIND RUN
$_span.windSpeed.max.nolabel($N51f,$NONE1F).rjust(5) #slurp ## HI SPEED
$_span.windDir.max.ordinal_compass.format(None_string="---").rjust(5) #slurp 
## HI DIR
$_span.windchill.avg.nolabel($N51f,$NONE1F).rjust(6) #slurp ## WIND CHILL
$_span.heatindex.avg.nolabel($N51f,$NONE1F).rjust(6) #slurp ## HEAT INDEX
$wc.CalculateTHWIndex($_span.heatIndex.avg.raw,$span.windSpeed.avg.raw).
rjust(6) #slurp ## THW INDEX 
$_span.barometer.avg.nolabel($N52f).rjust(7) #slurp ## BAR
$_span.rain.sum.nolabel($N52f,$NONE2F).rjust(5) #slurp ## RAIN
$_span.rainRate.avg.nolabel($N51f,$NONE1F).rjust(5) #slurp ## RAIN RATE
$_span.heatdeg.avg.nolabel($N51f,$NONE1F).rjust(7) #slurp ## HEAT D-D
$_span.cooldeg.avg.nolabel($N51f,$NONE1F).rjust(7) #slurp ## COOL D-D
$_span.inTemp.avg.nolabel($N51f,$NONE1F).rjust(6) #slurp ## IN TEMP
$_span.inHumidity.avg.nolabel($N50f,$NA).rjust(5) #slurp ##IN HUM
$wc.CalculateDewPoint($_span.inTemp.avg.raw,$_span.inHumidity.avg.raw).rjust
(6) #slurp ## IN DEW
$wc.CalculateHeatIndex($_span.inTemp.avg.raw,$_span.inHumidity.avg.raw).
rjust(6) #slurp ## IN HEAT
$wc.CalculateEMC($_span.inTemp.avg.raw,$_span.inHumidity.avg.raw).rjust(6) 
#slurp 
## IN EMC
$wc.CalculateAirDensity($_span.inTemp.avg.raw,$_span.pressure.avg.raw).rjust
(6) #slurp ## IN AIR DENSITY
     0 #slurp ## WIND SAMPLES
   7 #slurp ## TRANSMITTER ID
$_span.rxCheckPercent.last.nolabel($N51f,$NONE1F).rjust(8) #slurp ## IIS 
RECEPTION QUALITY
  15 ## ARCHIVE INTERVAL
#end for

This is my python file that generates the $last2days :

from __future__ import with_statement
from importlib import reload

import datetime
import time
import calendar
import json
import os
import os.path
import syslog
import sys
import locale

import weewx
import weecfg
import configobj
import weedb
import weeutil.weeutil
import weewx.reportengine
import weewx.station
import weewx.units
import weewx.tags
import weewx.uwxutils

from collections import OrderedDict

from weewx.cheetahgenerator import SearchList
from weewx.tags import TimespanBinder
from weeutil.weeutil import to_bool, TimeSpan, to_int, archiveDaySpan, 
archiveWeekSpan, archiveMonthSpan, archiveYearSpan, startOfDay, 
timestamp_to_string, option_as_list
try:
   from weeutil.config import search_up
except:
   # Pass here because chances are we have an old version of weewx which 
will get caught below. 
    pass
   
# Check weewx version. Many things like search_up, weeutil.weeutil.KeyDict 
(label_dict) are from 3.9
if weewx.__version__ < "3.9":
   raise weewx.UnsupportedFeature("weewx 3.9 and newer is required, found %s
" % weewx.__version__)     

def logmsg(level, msg):
   syslog.syslog(level, 'Hydrometeo Extension: %s' % msg)

def logdbg(msg):
   logmsg(syslog.LOG_DEBUG, msg)

def loginf(msg):
   logmsg(syslog.LOG_INFO, msg)

def logerr(msg):
   logmsg(syslog.LOG_ERR, msg)

# Print version in syslog for easier troubleshooting
VERSION = "0.1"
loginf("version %s" % VERSION)

class ExtraStats(SearchList):
   def __init__(self, generator):
       SearchList.__init__(self, generator)

    def get_extension_list(self, timespan, db_lookup):

        alltime = TimespanBinder(timespan, db_lookup, 
formatter=self.generator.formatter, 
converter=self.generator.converter, skin_dict= self.generator.skin_dict)

        last2days = self.make_download_data(1, db_lookup)
       last7days = self.make_download_data(7, db_lookup)
       search_list_extension = {'last2days' : last2days,
                                'last7days' : last7days,
                                'alltime' : alltime}

        return [search_list_extension]

    def make_download_data(self, numberofdays, db_lookup):
       ts_end = datetime.datetime.now()
       ts_start = datetime.datetime.now() - datetime.timedelta(days
=numberofdays)
       ts_start = ts_start.replace(hour=00, minute=15, second=00,microsecond
=00)

        tsb = TimespanBinder(TimeSpan(time.mktime(ts_start.timetuple()), 
time.mktime(ts_end.timetuple())), db_lookup,formatter=self.generator.formatter, 
converter=self.generator.converter, skin_dict= self.generator.skin_dict)
       spans = tsb.spans(interval=900)
       return spans








On Wednesday, May 6, 2020 at 11:56:35 AM UTC-4, Tom Keffer wrote:
>
> I have no idea what I'm looking at, what time this report was run, what 
> the report is, nor how to reproduce it. 
>
> On Wed, May 6, 2020 at 8:17 AM Hyrules <hyr...@gmail.com <javascript:>> 
> wrote:
>
>> I have a report that generates results for the last 2 days in data. The 
>> report is scheduled to run every 15 minutes with a custom report_timing. 
>> Report is execting properly but the last value of the report is always zero 
>>
>>     [[HydroMeteoReport]]
>>         skin = hydrometeo
>>         enable = true
>>         HTML_ROOT = /var/www/html/weewx/hydrometeo
>>         report_timing = */15 * * * *
>>
>> Weather station archive interval is 5 minutes.
>>
>> Example :
>>
>> 06/05/20  7:45a    5.8    6.0    5.4    59   -1.5   1.1    NW   0.27   
>> 1.6    NW    5.8    5.8    3.9 1015.45  0.00   0.0    14.3     0.0   19.3 
>>    46    7.4   19.3   8.72 1.2087      0    7     99.9   15 
>> 06/05/20  8:00a    6.6    7.1    6.1    56   -1.5   0.0   N/A   0.00   
>> 0.0   N/A    6.6    6.6    4.7 1015.46  0.00   0.0    14.3     0.0   19.4 
>>    46    7.4   19.4   8.72 1.2084      0    7     97.9   15 
>> 06/05/20  8:15a    7.8    8.1    7.4    54   -1.0   0.0   N/A   0.00   
>> 0.0   N/A    7.8    7.8    5.8 1015.45  0.00   0.0    14.3     0.0   19.4 
>>    45    7.3   19.4   8.62 1.2081      0    7     99.9   15 
>> 06/05/20  8:30a    8.0    8.3    7.8    52   -1.2   2.7   WNW   0.67   
>> 4.8   WNW    8.0    8.0    6.1 1015.39  0.00   0.0    14.3     0.0   19.6 
>>    45    7.4   19.6   8.56 1.2073      0    7     99.9   15 
>> 06/05/20  8:45a    8.2    8.6    7.8    50   -1.5   2.7     E   0.67   
>> 3.2     W    8.2    8.2    6.3 1015.33  0.00   0.0    14.3     0.0   19.9 
>>    45    7.6   19.9   8.56 1.2061      0    7     99.9   15 
>> 06/05/20  9:00a    9.0    9.1    8.8    48   -1.6   2.1    NE   0.54   
>> 3.2   ENE    9.0    9.0    7.0 1015.31  0.00   0.0    14.3     0.0   19.9 
>>    45    7.6   19.9   8.56 1.2061      0    7     98.9   15 
>> 06/05/20  9:15a    9.1    9.3    9.0    48   -1.4   1.1    NE   0.27   
>> 1.6   ENE    9.1    9.1    7.2 1015.14  0.00   0.0    14.3     0.0   20.1 
>>    44    7.6   20.1   8.45 1.2051      0    7     98.9   15 
>> 06/05/20  9:30a    9.9   10.0    9.8    46   -1.2   0.5   NNE   0.13   
>> 1.6   NNE    9.9    9.9    8.0 1015.02  0.00   0.0    14.3     0.0   20.0 
>>    44    7.4   20.0   8.40 1.2053      0    7     98.9   15 
>> 06/05/20  9:45a    9.7    9.7    9.6    46   -1.4   0.0   N/A   0.00   
>> 0.0   N/A    9.7    9.7    7.7 1014.99  0.00   0.0    14.3     0.0   20.0 
>>    44    7.4   20.0   8.40 1.2053      0    7     99.9   15 
>> 06/05/20 10:00a    9.8    9.8    9.8    45   -1.6   0.5     E   0.13   
>> 1.6     E    9.8    9.8    7.9 1014.77  0.00   0.0    14.3     0.0   20.0 
>>    44    7.4   20.0   8.40 1.2050      0    7     99.9   15 
>> 06/05/20 10:15a   10.0   10.2    9.8    45   -1.5   0.0   N/A   0.00   
>> 0.0   N/A   10.0   10.0    8.1 1014.66  0.00   0.0    14.3     0.0   20.0 
>>    44    7.4   20.0   8.40 1.2049      0    7     99.9   15 
>> 06/05/20 10:30a   10.1   10.3    9.9    43   -1.8   2.7   WNW   0.67   
>> 3.2    NW   10.1   10.1    8.2 1014.57  0.00   0.0    14.3     0.0   20.0 
>>    44    7.4   20.0   8.40 1.2048      0    7     99.9   15 
>> 06/05/20 10:45a    0.0    0.0    0.0   0.0    0.0   0.0   N/A   0.00   
>> 0.0   N/A    0.0    0.0    0.0     N/A  0.00   0.0    14.3     0.0    0.0 
>>   N/A    0.0    0.0   0.00 0.0000      0    7      0.0   15 
>>
>> Those values are mixed kind of values. avg max min sum for rain. but 
>> mostly avg.
>>
>> I was wondering if this might be a bug with weewx or a misunderstanding 
>> in my part. If I execute the report a few minutes later the value is 
>> populated.
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "weewx-user" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to weewx...@googlegroups.com <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/weewx-user/20d610d8-5ef6-4225-8f6a-808bc70e8650%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/weewx-user/20d610d8-5ef6-4225-8f6a-808bc70e8650%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to weewx-user+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/7b3f01a4-72cd-4fe5-a7b4-f92147bb0fc3%40googlegroups.com.

Reply via email to