Recent Changes - Search:

Project Status

Project Documents


Bug Tracking

edit SideBar


Photizo Notes

  • All three photizo programs reside on the eeitools server where each is run via crontab. The three programs are:
    • the importer which imports raw data files into photizo databases
    • the 'generate page'/gp program which generates station diagnostics and condition pages, and
    • the graphing program which plots the raw data on graphs.
  • To run each program manually, log on to the server, sudo to root, refer to the crontab for the station owner (example: crontab -l -u gws), sudo to the owner and use/copy the appropriate crontab command. The cron default is to run the importer and the gp programs once an hour and the graphing program four times a day, but less often for long-term graphs
    example: gws$ /usr/local/bin/ ~/photizo/cchrc.ini
  • The --help for each program is pretty thorough.


NOTE: modules that are included in Python are not included in this list, unless they were added in recent versions of Python. Also Note: With the exception of Matplotlib, you should be able to install your OS's native packages for the needed modules.

Program Overview


  • The importer retrieves raw data files from the location given in the configuration file and updates the photizo database, the location of which is also given in the configuration file.

(examples: /home/gws/photizo/data, /home/colville/photizo/data) based on the settings and column maps defined in the ini file. Note that:

  • Each photizo program - including the importer - must be run with a path to the station ini file
  • The first time the importer is run, the '- -initial-run' option must be used.
  • The importer can be run to update individual stations with the '- -station=StationName' option (example: '- -station=L9312')
  • For certain updates to the configuration file such as changes to column mapping and the addition of new stations, the following applies:
    • delete the database folder for the station(s) concerned
    • use the '- -initial-run' option for the corresponding station(s), example: '/usr/local/bin/ - -initial-run - -station=L9312 ~/photizo/nslakes.ini'


  • The gp program generates:
    -- A diagnostics page for internal use showing the status of all stations with:
    - Latest download
    - Days old
    - Battery Voltage
    - Panel Temp
    - Links to raw data files, station pages if they exist and to other html pages as required
    -- A conditions page for each station listed in the 'StationOrder' section of the configuration file. The conditions page also addresses data recency and displays 3 sets of tables:
    If cameras are installed at the station, a table with links to current and archived images is included on the page
    Diagnostic, Wind, Weather and other data tables such as water level or soil surface and subsurface temperatures, which link to graphs that plot data values for 7 days or more
    24-hour table of raw data values for the key parameters, showing hourly changes to the latest readings displayed in the above tables (but is not limited to them)
    -- Note that these functions (cameras, data tables, and 24-hour tables) are simply operations of the given template, and may be modified greatly given the flexibility the template allows.
    • The gp program requires the path to the configuration file to run but cannot be run for an individual station, since the diagnostics page displays the status of all stations listed in a configuration file
    • The station diagnostics page requires stationDiag.kid and the conditions page require stationPage.kid in the template directory specified in the configuration file. Both of these files use a python template to read from raw data files and display the readings in html pages. A css file is commonly included to format the html output, which can also be 'include' files that are integrated into the web pages of client agencies.


  • The graphing program generates png files with figures containing one to three graphs. The layout of the graphs is governed by
  • The program requires that matplotlib be installed on the same platform. The version of matplotlib matters: matplotlib-0.91.5 is the one in use now.


Edit - History - Print - Recent Changes - Search
Page last modified on April 07, 2010, at 08:42 AM