Note: Sawmill 2.0 was called Chartreuse Cartouche 2.0 through its entire beta period, and
was renamed only at ship time.
| Version 2.0, released December 30, 1997 |
Bugs fixed in version 2.0:
- Fixed problem where progress bar would appear, but would be empty,
when reading from backticked log from the command line.
- Fixed problem which would cause crashes when num_database_segments was set to 1.
Fixed it the easy way, by making the lower bound of num_database_segments 2.
- Fixed bug in accept_if_ends_with; it was rejecting matches rather than
accepting them, making it a synonym for reject_if_ends_with.
New features in version 2.0:
- Changed some wordings on the main menu to make things clearer.
Added a link to the main menu to the "done updating/creating database" page.
Made various clarifying modifications to the text of a few interview pages.
| Version 2.0fc5, released December 27, 1997 |
Bugs fixed in version 2.0fc5:
- Fixed bug where running from command line with use_progress_bar false would
still generate part of the progress bar.
- Fixed problem where recreating a database using Create Database button
would generate an error right
when the "finished" page was supposed to come up.
- Fixed the "optimize" feature, which wasn't properly pulling lower-level items upward
in some circumstances.
- Fixed slight vertical misalignment in bottom row of tables.
- Fixed problem where Chartreuse Cartouche was trying to write the
database config file even when there was no database; this could result in crashes,
especially if the cgi-bin directory was write-protected.
- Added better error checking for connecting to existing database; Chartreuse Cartouche
now generates a better error message if the specified database does not exist.
New features in version 2.0fc5:
- Instructions are now suppressed when Show Stats is unchecked.
- Reworked the top of stats pages to be a little more attractive,
and to include a message about when to use the Recompute buttons and the password field.
- Added field to the option info pages (docs pages which describe a single option)
to show whether the option is secure or not.
- Added a "unique hosts" feature which shows the number of unique hostnames
contributing to each table row. This can be used to see how many different people
visited a particular page, or on a particular day. This information is not stored
in the database in any easily-accessible way, so Chartreuse Cartouche has to do
many additional database accesses when computing this information. This can slow
things down significantly, so this option is off by default. It is available from
the Item Options table on a stats page.
| Version 2.0fc3, released December 18, 1997 |
Bugs fixed in version 2.0fc3:
- Added code to send 20,000 spaces to server every ten seconds when
use_progress_bar is false. This makes no difference visually, but it
keeps the server and the browser fed, so they won't assume that Chartreuse Cartouche is
dead, and time out.
New features in version 2.0fc3:
- Revamped the Processing page and the Progress page. The Processing page now
appears only at the beginning of log reading, and only when use_progress_bar
is false. The Processing page now looks a little better too.
The Progress page now shows the number of lines processed, and the
elapsed time, in addition to what it showed before. The Progress page now
appears not only for files, but also for backticked logs, though the progress
bar itself is omitted in this case (because there's no way to know how far along
it is).
- Bandwidth-related table options no longer appear in the Table Options
table when bandwidth information is not available; similarly for hits options.
- Added a progress_page_interval option which lets you control how often progress
pages appear. If you haven't been able to use progress pages because of Netscape
crashing, you may be able to (albeit at a low granularity) by setting this option
to a high value, like 30 or 60.
| Version 2.0fc2, released December 17, 1997 |
Bugs fixed in version 2.0fc2:
- Fixed cosmetic bug which would make bars in date graph wide enough
to overlap each other, if the data started partway through the graph.
- Fixed problem with Run Config on a Create Database interview.
- Fixed problem where the log file modification date was not bring
properly stored in the database.
New features in version 2.0fc2:
- Added the name of the offending config to configuration error messages.
- Completely revamped main menu. Items in popup menus now only appear
when they are reasonable (it is no longer possible, for instance, to
base a Browse Log interview on a Create Database interview).
The Run Configuration button has been replaced by four buttons,
one for each of the four configuration types. They have been named
things like "Browse Log," and the previous "Browse Log" button
has been renamed to "Create 'Browse Log' Configuration." Finally,
password-protected configurations no longer appear in menus on the
limited main menu.
- Improved the "Processing" page. This page appears immediately when
Chartreuse Cartouche starts reading a log, whether or not there is a
progress bar. If there is a progress bar, then the first progress bar
page will overwrite the Processing page; otherwise, the Processing page
will remain for the duration of the log file read. This provides better
feedback than earlier versions for those who can't or don't use the progress bar,
and for backticked logs.
- Every time Chartreuse Cartouche reads a block of the log file (about 10000 characters),
it now also prints a single space character. This might help prevent a problem
where either the web server or the browser was "giving up" on Chartreuse Cartouche
after a long period of no output. It should make no difference in the way things look.
- Because some web servers buffer CGI programs' output, Chartreuse Cartouche sends
a bunch of spaces after it sends a intermediate page (like a progress bar),
in an attempt to overflow any buffer. This version doubles the number of spaces
from previous versions (10,000 to 20,000). This makes things behave much better
on some web servers.
| Version 2.0fc1, released December 15, 1997 |
Bugs fixed in version 2.0fc1:
- Fixed problem where specifying a non-default table bar height
didn't change the height properly.
- Fixed several problems with bar_unit_image, bar_left_cap, and bar_right_cap.
- Fixed page_header_file option (which didn't work at all).
- Fixed bug where entering a partial path from a stats page and clicking Browse...
would try to recompute the stats with the partial path when you returned from the Browse,
possibly generating an error.
- Cleaned up cosmetic problems with turning off tables (use_tables false).
New features in version 2.0fc1:
- Added "detect when db dir is a file" capability to Win32 version (this feature
appeared in all other versions in 2.0b16).
- Added log_modification_time, which prints the modification date of the log file
on the banner; removed last_database_change_time.
Older configurations will not work unless you remove the ldct line.
- Spent a little time optimizing; log reading is now 25% faster.
- Changed Browse button to "Browse...".
- Made page_header and page_footer options insecure, since they can't do any harm.
- Made it so that both page_header and page_header_file can be specified,
and both will appear; similarly with footer.
- The line graph annotation table is no longer visible except on date pages.
- Improved pie chart slice fill algorithm to work better with very small slices.
| Version 2.0b16, released December 11, 1997 |
Bugs fixed in version 2.0b16:
- Fixed problem on date pages where the turndown annotations
(like Hits Pie Chart) were centered instead of being left justified.
- Fixed a bug in which browsing a Mac folder containing an invisible Icon file
would result in a "Missing closing quote" error.
New features in version 2.0b16:
- Added the Count Hits and Count Bandwidth options to interviews.
- Reorganized the options, removing the "Structure Options" category
and creating "Miscellaneous Options" and "Database Structure Options".
- Database Structure Options are no longer available during database browsing.
This is reasonable, because when you are browsing a database, that database is
static; you can't make any changes to its structure. On the other hand, while
you are browsing a log file, the database (in memory) is recreated for every
page, so you can change its structure from page to page.
- Removed password field from final page of interviews (unnecessary because there's
one at the beginning of every interview). Added password page to beginning of
Save Existing interview.
- Added a "Processing" page which shows up if 1) Chartreuse Cartouche is doing something
lengthy, like reading a log file; 2) your browser supports server push (IE doesn't) and
3) you have turned off the progress indicator (progress bar).
- Revamped the main menu to split it into protected and unprotected options. Made a new
"unprotected" main menu which contains only unprotected options, suitable for general
use. Add a link to this menu to the bottom of the normal "protected" main menu.
- Bandwidth pie charts and bandwidth tables, and the annotations which control them, are now
suppressed when bandwidth information is not available in the database. Thus it is no
longer possible to turn them on, only to see them empty. Similarly, hits pie charts and
hits tables are suppressed when hits information is not available.
- Interviews now automatically turn on the hits/bandwidth pie charts
and tables, depending on whether hit or bandwidth information is available
in the database.
- Added a check to see if the database directory is actually a file.
I found myself repeatedly entering the log file pathname in the database directory
field (since they look similar), and overwriting my log file with a database directory.
Now, if the specified database directory exists and is actually a file, Chartreuse Cartouche
generates a friendly error, suggesting that perhaps you didn't really intend to do that.
| Version 2.0b15, released December 9, 1997 |
Bugs fixed in version 2.0b15:
- Fixed a bug with some UNIX versions of 2.0b14 which would use ~ instead of
^ as the temporary config divider, and would generate errors because of it.
- Fixed a bug which could cause UNIX version of 2.0b14 to hang,
eating large amounts of CPU time (kernel time mostly).
- Fixed bug which would generate temporary configurations with names like
^.123.124.6^6758493 when running from the command line.
- Fixed several bugs with the Browse for pathname feature. It now works properly
in every case I can think of to give it.
New features in version 2.0b15:
- Added an option, useful for Macintosh only, which brings Chartreuse Cartouche
to the foreground while it runs. This significantly improves performance on
the Mac, at the cost of having the window popping up whenever anyone is
using it (annoying if the machine is more than just a server).
- Added another Next button to the database info interview page,
so users with small windows don't have to scroll if they don't want to change
anything.
| Version 2.0b14, released December 8, 1997 |
Bugs fixed in version 2.0b14:
- Fixed bug where running a config which had require_password true
from the command line would generated an HTML page requesting the password to stdout.
- Fixed problem where stats directory was not properly created.
- Fixed an error in the processing of WebSTAR-style dates. I wasn't properly
null-terminating the date string, so it was potentially including an
arbitrarily large block of memory after the actual date in the date. The results of
this are unpredictable, but could have included crashes or data corruption.
- Fixed bug with Required Password entry page on Mac (didn't appear when
it should have; seemed to hang).
- Fixed a bug which could result in an incorrect "unterminated quote in configuration" error.
- Fixed bug which would occur when you Browsed for a pathname, and then changed
your mind and used the browser's Back button to go back to the original page,
and then tried to enter the pathname manually. Before this fix, it would take
you back to the Browse page, and insist that you finish your aborted browse.
Now it lets you enter it manually, and continues as though you had never Browsed.
- Fixed a cosmetic error which would add the line "Content-type: text/html" to the top
of every page when running Chartreuse Cartouche on a Macintosh, and browsing it
with Internet Explorer.
New features in version 2.0b14:
- Changed the restrictions on config name characters, which used to be
"letters, numbers, and dashes," to "everything but ^". This should please
people (like me) who like to use underbars for this sort of thing.
Also added a check for valid configuration name (no ^, not too long).
As part of this change, temporary config files now use ^ instead of _ to separate the
time stamp and host stamp from the rest of the config name.
Since Chartreuse Cartouche no longer looks for temp configs which use _, you will
need to manually delete any such temporary configurations that are still in the
information directory.
- Changed the date graph default colors to conform to the standard 216 color web palette.
- When running from the command line, images are no longer created if a stats page
is being generated to stdout.
| Version 2.0b13, released December 5, 1997 |
Bugs fixed in version 2.0b13:
- Fixed bug where the info directory (and maybe the server directory) was not
being cleared properly when items expired, allowing unlimited buildup of
temporary configurations.
- Fixed a problem with the tick marks at the right of the hits-per-day bar chart --
they now line up better with the bars.
- Fixed require_password so it actually does require a password.
- Fixed problem where trying to create a database of more than 3 dimensions
could generate an error during the interview.
- Fixed a bug which could cause crashes in some very borderline cases
(like creating a database with a field which does not exist in the log).
- Fixed a couple small bugs in the size and response hierarchies
which would appear if the top
levels were collapsed.
- Fixed bug with path hierarchy which would cause two levels of the same line
of the hierarchy to appear in some cases if collapse_top was used.
- Fixed conflict between link_subitems and collapse_top.
- Fixed the user field icon (shown when breaking a log down by user).
New features in version 2.0b13:
- Added a "Using Chartreuse Cartouche" documentation page with lots of
information and a few examples.
- Added a "Power User" page to the documentation, which discusses the powerful but
ugly ways of using Chartreuse Cartouche: manually creating/editing config files
with a text editor, using the command line (UNIX and Windows only), and using
the CGI command line. This page is a must-read for power users!
- Improved password encryption. Old encryption looked good in the code, but
all those operations actually reduced to something like rot-13 (gack). The
new one is much harder to crack (not impossible still, so keep the password
file permissions CGI-read-only if you're concerned). This means that
you must delete your old ccpasswd file, in the information directory.
You will be prompted to enter a new one.
- Improved description of information directory in the startup interview
to explain more clearly what it will be used for, and how much space it will use.
- Added a copyright label on the stats page banner, and a documentation page
about copyright and piracy.
- Eliminated ^ to go to root of operation field hierarchy; since operation is
a non-hierarchical field, you're always at the root, and the link was pointless.
| Version 2.0b12, released December 1, 1997 |
Bugs fixed in version 2.0b12:
- Fixed a huge number of small, mostly cosmetic problems. I went through
every interview page and every page of documentation, looking for errors. I
found over 100 of them: typos, mispellings, gramatical errors, and stylistic
errors.
- Fixed problem with Mac version which prevented the window from updating.
- Fixed a(nother) problem with the transition from Build Database to
Browse Database interviews.
- Fixed weirdness with formatting of log date format checkbox on Macintosh.
- Fixed Mac window so it centers now, regardless of screen size.
- Fixed a bug where the labels on tick marks started at the beginning of the
date interval, even when the data (and tick marks) did not start until part
way through the interval.
- Improved interactivity of Mac version.
- Fixed problem where help_on pages would reload multiple times.
- Fixed problem where help_on would fail in CGI mode if it got an unknown option name
(it now generated a proper error).
- Fixed problem where horizontal tick mark labels in date line graphs could overlap.
- Fixed bug where an optimized item would keep its original icon, rather than
displaying the icon of the item it was optimized to.
New features in version 2.0b12:
- Greatly improved the date graphs by adding a separate panel to the graph
which shows hits on a per-date basis (rather than only showing the cumulative
hits, as before). Spiffy.
- Added a
share_bar_box_images option to let a configuration share its
bar images and its box images with other configurations. When this is true,
a configuration no longer has to regenerate all the bar segments and boxes each
time a new page is generated; it can reuse the images generated by an earlier
run. This can greatly speed browsing, especially for small data sets.
However, this also means that all configurations which are sharing these images
need to use the same color schemes.
- Added the version number to the information bar (bottom of stats page).
- Improved documentation; added several new pages.
- Added a "Quick Browse Log" button to the main menu, which can be used to
browse Common Access Log Format logs with minimal interviewing.
- Changed the default number of database fields from 1 to 3.
- Added an
entry_name option so you can specify what you want to call "hits".
For instance, one of the logs I process is not a web log, but an RC5-64
personal proxy log. Each of the log entries in this log represents a single
block transferred. I use entry_name block to specify that entries should
be called "blocks" in stats pages, rather than "hits."
| Version 2.0b11, released November 25, 1997 |
Bugs fixed in version 2.0b11:
- Fixed a number of fairly minor HTML errors. I went through every page
Chartreuse Cartouche generates (or nearly every page), and ran it through
an HTML checking program. Several of them had errors, most often problems
with nested tables. I fixed almost all the errors, but a very few I left
alone because they work with both Netscape and IE, and they provide formatting
which I cannot do legally in HTML 3.2. These include the use of centered
buttons (by including a INPUT tag in a CENTER tag, which is illegal), and
the use of the CENTER tag itself, which is frowned upon, but has no
backwards-compatible replacement (as far as I can tell).
- Fixed a security hole in Browse; see the New Features section below.
- Fixed a bug with \ appearing at the beginning of pathnames when Browse was used.
- Fixed the Show Stats checkbox (on a stats page), which generated a Chartreuse
Cartouche error.
- Removed the "Write to config file" item from the Basic Config Options table
in the stats page; it really didn't belong there.
- Removed browse button from "Name of log file site" and "Root URL of log file server",
and added it to the GIF image pathname items.
- Fixed bug which would cause crash when increasing the number of filters from a stats page.
- Fixed bug where last database update was not being saved correctly.
- Fixed bug where browsing a database could result in "unterminated quote in config" error.
- Fixed Browse for stats page options (it generated a Chartreuse Cartouche error).
New features in version 2.0b11:
- Changed the "[Browse]" link to be a Browse button. This has a number
of significant ramifications. First, it helped to plug a security hole
in 2.0b10 which allowed any browsing person to view your server file system
hierarchy (but not view or modify files). Second, this change allowed
me to check what was entered in the field, and start browsing there.
Third, since it is now possible to start browsing anywhere by entering a
partial pathname in the field and clicking Browse, this provides a workaround
for systems which have a large number of remote volumes (NFS, AppleShare, etc.)
mounted directly under the root (/, the top level), and which therefore take
virtually forever to browse the top level, which is the default starting
point of Browse. Finally, this change allowed me to update the current
configuration based on the entire form, so it is now possible to use Browse to
update multiple items on the same page (for instance, on a stats page) without
the first one disappearing after you Browse the second.
- Made "stats_directory" and "stats_url" global. The startup sequence now prompts for
them, and they are no longer configuration options (they are stored in the ccsecurity
file). In addition to making interviews one page shorter, this makes the following
feature possible:
- Added icons to the Browse page. Files and folders now appear with appropriate
file/folder icons, and the >> has been replaced by the red arrow.
- Made startup easier for those with a writable CGI directory.
Chartreuse
Cartouche will automatically create the "ccinfo" directory in the CGI
directory if it can; only if it cannot will it prompt for the location.
The startup sequence also now attempts to create ccsecurity in the CGI directory.
If it fails, it falls back on the 2.0b10 method of creating it in the
information directory, and asking the user to move it. If it succeeds,
this stage of the startup interview is omitted. Though cgi-bin on UNIX
systems should not generally be writable, this is nice for Macintosh,
where permissions hardly exist, and for Windows, where they exist but most
people ignore them.
- Added links to the main menu and documentation on the info bar.
- Improved the Mac interface. If you run Chartreuse Cartouche as a stand-alone
application (which you shouldn't; it should only be run as a CGI program),
it will bring up a window with a little information, including pointing out
that it is CGI-only. Also, the menus now work better (you can Quit with either
a menu selection or a keyboard shortcut, whereas in 2.0b10 you had to use
the shortcut). It still needs a little work, especially in its multitasking-
friendliness; look for that in the next version or thereabouts.
- Added a database field type "path2". path2 is very similar to path;
I added it to allow support for log files which contain two paths per entry
(a beta tester has such a log file). This is rather a hack; I'm pondering
an complete reworking of the log file structure specification, but I'll
probably leave that for next version (3.0).
| Version 2.0b10, released November 17, 1997 |
Bugs fixed in version 2.0b10:
- Fixed a bug which would sometimes make the
reject_if_ends_with
filter not reject properly.
- Fixed a bug with the Use progress bar checkbox which generated a
Chartreuse Cartouche Error.
- Fixed a bug where the small configuration file stored in every database
was not bring read properly. This especially affected people using
non-Common Log Format logs.
- Fixed a bug with the temporary string management which could cause crashes
when reading a log with very long lines.
- Fixed a bug which would crash when 0 filters were specified.
- Fixed a bug where dates of the form mm/dd/yy were parsed incorrectly,
generating incorrect years.
- Eliminated the thousands of periods (.) which would sometimes be generated at
the end of an HTML page.
- Fixed a problem with host and date where leaves would be omitted for
high values of Collapse All Hierarchy Levels Above Level.
- Fixed problem with URL and path where root would be omitted for high
values of Collapse All Hierarchy Levels Above Level.
- Fixed problem where with some browsers, pressing the return key in an
interview field would submit the form and generate an error. It still
submits the form, but now it's as though you clicked the button
(as it should be).
New features in version 2.0b10:
- Improved security; added three browsing modes; ccinfo can now be ouside cgi-bin.
- Added encryption to the password file. It's no longer possible to learn the
Chartreuse Cartouche password by viewing the
ccpasswd file.
- Added user-friendly startup sequence for creating ccsecure and ccinfo.
- Implemented pathname browsing. It is now possible to entirely avoid typing
pathnames-- a Browse link next to every pathname item leads to a graphical
browser of the server's local file system.
- Added support for multiple simultaneous interviews. Like the multi support
on browsing a config, this ensures uniqueness using the browsing host's IP
number and the current time, so it does not allow multiple
simultaneous interviews from the same browsing host at the same time.
- Added ticks and labels to date graphs.
- Added password protection to the beginning of interviews.
- Added the option to password-protect any configuration (so it cannot be
browsed or edited without the password).
- Configurations whose names end in "hidden" do not appear in the menu now.
- Standardized most interview-style interactions (like prompting for password)
under the "interview" format (introduced in a limited way in 2.0b9).
- Added menu of configs to every item on main menu. Choosing a config will
start the interview with that config loaded, allowing easy editing of a config
through an interview format.
- Added information banner at the bottom. Banner has last updated time,
and a little Chartreuse Cartouche information.
- Replaced Load and Save buttons/fields in a stats page with a Save button only,
which leads to a short interview to save the config.
- Saving a live config now forces the show_options option to false. This eliminates
the annoying "feature" of earlier versions where every configuration saved
from the stats page had options shown.
- Changed "Suppress all Hierarchy Levels Above Level..." to
"Collapse All Hierarchy Levels Above Level..."
- Changed date graph equations to be on by default.
- Made cosmetic improvements to top page.
- Added support for "user" and "browser" fields in a database.
- Added another Next button to the Log File Format interview page,
so you don't have to scroll down if you're browsing with a small monitor
and you're using a predefined log type.
| Version 2.0b9, released October 10, 1997 |
Bugs fixed in version 2.0b9:
- Items in the hierarchy can now have more than 255 subitems
without screwing the hierarchy up (I can't believe I did that).
- Version 2.0b8 and earlier used a fixed-size character pool for storing temporary
strings. Under some circumstances, this could overflow, causing unpredictable
results. This has been reworked into a multi-segment pool, where a new segment
is allocated if the old one overflows. The upshot of this is improved stability.
New features in version 2.0b9:
- Revamped the "front page" to have several options. One lets you load any
previously saved configuration, and the others lead to interview-style
multipage configuration sessions. It's all quite different from 2.0b8,
and hopefully easier to use.
- Added the "use progress bar" option to the appropriate interviews, so it
can be disabled if it's causing problems (for some users, it crashes Netscape).
- The subitems files of the database are no longer written unless they have changed
since the last time they were written. With this change, nothing is ever written
to the database during browsing, so it can be read-only if desired.
- A database now contains a new file called config, which is a simple configuration
file containing the configuration in effect when the database was created. This
is read before the database is accessed. This means that it is no longer necessary
to set database options when you're just browsing a database, which greatly simplifies
the "browse database" interview. This also prevents the sort of problems which
could arise when the configuration being used to browse a database didn't match
the configuration used to create it.
| Version 2.0b8, released October 2, 1997 |
Bugs fixed in version 2.0b8:
- An error is now generated when a log_filename command is specified using
backticks, but there is an error executing the command.
New features in version 2.0b8:
- Expanded online docs to include most of the content of
the Chartreuse Cartouche 1.0 documentation. This documentation
is build into the CGI program, and is therefore browsable
at any time.
- Split the configuration options into "secure" options and "safe" options.
Most options are "safe," and can be changed by anyone at any time, even without
a password. A few options (mostly those which involve reading or writing files,
like log_pathname or database_directory) are "secure," and can only be changed
if the password is supplied.
| Version 2.0b7, released September 15, 1997 |
Bugs fixed in version 2.0b7:
- Fixed a really small bug with leading / in table dates, and in page titles.
- Fixed a bug which would show the wrong number of hits in
the final (combined) row of tables and pie chart legends.
- Fixed bug which could result in an incorrect database
directory value (and could cause crashes).
- Fixed bug which would prevent a config file specified on a non-CGI
command line from being read.
- Fixed a bug which could cause crashes when viewing some pages far down
in several hierarchies.
- Fixed bug where changes to bar colors or pie chart slice colors
would sometimes not show up immediately.
- Fixed bug where Hits Table and Bandwidth Table options were appearing
in the Table Options table as checkboxes. These are configuration
options, but they're special-- they should be appearing only as turndown
triangles.
- Fixed bug with links in help_on pages (links would generate an error).
New features in version 2.0b7:
- Improved the algorithm for deciding when the last slice in a pie chart is just one item.
Now handles date charts better.
- Improved collision-prevention between config files and pictures. It used to be
possible for two people who were simultaneously using Chartreuse Cartouche on
the server to interfere with each other (graphs, bars, etc. from one person's
configuration could appear in another person's window). The likelihood of this
has been greatly reduced by adding a unique identifier to most filenames. This
identifier contains the current time, and the IP number of the browsing machine.
So it should be impossible for people on different machines to interfere with
each other. It's still possible to have interference between two people using
Chartreuse Cartouche from the same browsing machine
to browse the same configuration at the same time,
but what's the chance of that?
- Added "cleanup" code to remove older items from ccinfo and stats. This code uses
the time stamp in the unique identifier (see previous item) to determine when
an item is old. Old temporary configurations and old images are deleted.
- Added a feature to generate the log file on the fly using an arbitrary command
line program. Just specify a command line in backticks (`) as your log file
(example: `gunzip -c /var/log/access_log.gz`) and the command will be executed,
and its output will be used as the log file.
- Added a new, simpler "front page" (appears when you run Chartreuse Cartouche
without command line options from CGI). The front page has an option for loading
an existing configuration, for creating a new configuration (that brings up the
page which used to be the front page), and for browsing the documentation.
- Added min and max values to variables displayed in help_on pages.
| Version 2.0b6, released September 12, 1997 |
Bugs fixed in version 2.0b6:
- Fixed the unconditional
accept and reject filters,
which didn't work when entered from the CGI form.
- Fixed a problem where changing the number of log filters or the number
of database fields, and regenerating, would not properly increase the
number available from the options tables, or would generate incorrect values.
- Fixed the Related Links label (again).
New features in version 2.0b6:
- Added bounds checking on integer option values. This generates an error
if a value specified for an option is outside the allowable range of values.
- Changed the names of the two hierarchy limits to
"Suppress All Hierachy Levels Below Level..." and
"Suppress All Hierachy Levels Above Level...." These names hopefully make the purpose
of these values clearer.
- Improved error reporting. Configuration errors are now reported along with
the command name and variable index where the error occurred. Errors displays
are also more attractive now (though this is of course subjective).
- Improved interface for reading and writing configurations. When options are on,
you can now enter a configuration name at the top of the stats page and click the
Read or Write button to read or write a configuration.
| Version 2.0b5, released September 8, 1997 |
Bugs fixed in version 2.0b5:
- Fixed the "help on" links on the startup page.
- Fixed the "link subitems" feature, which had been utterly broken.
- Eliminated the See Also label when there are no links to see.
- Fixed a bug which would generate files with names like
_8756563788
when Chartreuse Cartouche was run from the command line.
New features in version 2.0b5:
- Spent a long time looking carefully at
memory allocation and use. The conclusion is that Chartreuse Cartouche doesn't
have a memory leak-- the extra memory use is apparently the result of
memory fragmentation
from the many auto-expanding arrays used internally. So there is no great reduction
in memory use forthcoming; memory use is highly optimized at the moment
and is not likely to be reduced. Expect to see actual memory use above the amounts
reported in the progress window, perhaps as much as twice as much as is reported.
- Completely reworked the internal code for generating the CGI options. This doesn't
make a huge difference in appearance or functionality, but it means that from now on,
all the options will appear in the options tables on stats pages,
rather than just those I remember to put there. Making this change also brought in
a lot of options which I had forgotten to add, including a few complete
tables of options (Headers/Footers, Structure, and Macintosh). There is now a much
closer correlation between the options in a stats page, and the options in a
"help" page (and both are based directly on the actual available options).
- Implemented, to a limited degree, loading and saving of configurations.
The Basic Configuration options now have "Read From Config" and "Write To Config"
options. Enter a config filename in the Read field and recompute to load a new config,
or enter a config filename in the Write field and recompute to write to that config.
I expect to improve this interface later.
- Revamped the internal method for building CGI pages. This shouldn't have any visible
effects (though without the change the new Mac version simply would not work),
but it might have introduced some bugs.
- Updated my compiler on the Mac, and recompiled/ported to use the new compiler.
The new compiler fixed some serious flaws which prevented me from using
much optimization for previous betas. The latest
Mac version is fully optimized, and should be significantly faster and smaller.
- Restored the "cache superitems" option, which used to exist, then was disabled for a
bit. Due to internal changes, this option may not give as big a speedup as it used
to, but it's worth a try.
| Version 2.0b4, released September 3, 1997 |
Bugs fixed in version 2.0b4:
- Fixed a major bug which would cause all options entered on a stats page
to be ignored!
- Corrected problem where help, version info, and print_config info would
be generated twice.
- Fixed replacement filters (which could crash when used in 2.0b3).
New features in version 2.0b4:
- Added
log_file_format option, which is an easy way to
select one of several built-in log file formats. Setting this option
sets all the log_field_index options, and the log_date_format option.
Currently supported formats are CommonAccess (NCSA), CommonReferrer (NCSA),
WebSTAR, and QuidProQuo. A setting of Other allows the format to be described
manually, as before.
- Added
replace_all_with path : / as a default filter. This
is convenient, since it is necessary for WebSTAR logs, and doesn't usually
affect other kinds of logs.
| Version 2.0b3, released August 31, 1997 |
New features in version 2.0b3:
- Completed the Macintosh port. On the Mac, Chartreuse Cartouche runs as a standard
WebSTAR-compliant CGI application, and uses WebSTAR's "partial send" feature
(available on recent versions of WebSTAR and other servers) to implement server push
which is used for the progress bar, when using Netscape. This means that your server
must support WebSTAR CGI applications, and must support "partial send." The latest
versions of WebSTAR and Quid Pro Quo should work fine.
- Added support for Microsoft Internet Explorer. Since Internet Explorer does not
(apparently) support server push, the progress bar will not appear when IE is used.
Other than that, everything should work the same.
- Brought the command line back to its full glory (useful only under UNIX and Windows).
Chartreuse Cartouche now auto-detects
when it is running from the command line, and removes all security restrictions.
When it is running as CGI, the CGI command line (query string) is much more
restricted. Under most circumstances, however, there is n reason to change the
CGI command line.
- Redesigned the internal data structures which store the hierarchies.
This should reduce memory requirements a bit, but that's still an unsolved memory
leak somethere (I had hoped this would solve it).
As an added perk, the memory usage of the new data structures are easy to monitor,
so you can see how much they're using from the progess bar window.
| Version 2.0b2, released August 24, 1997 |
Bug fixed in version 2.0b2:
- Fixed a problem with the log filters at the bottom of the startup page
New features in version 2.0b2:
- Implemented security features. Chartreuse Cartouche now requires a password to
submit a CGI form, and its command line has been severely crippled, so there is (in theory)
no way for a malicious user to do anything naughty. One side effect of this is that
configurations are now transmitted from one invocation to the next through config files
in a ccinfo directory in the CGI directory, so this directory must exist and must be
readable and writable by Chartreuse Cartouche (or the CGI directory itself must be
writable, so Chartreuse Cartouche can create the directory itself). Another side
effect is that, for the moment, Chartreuse Cartouche is not usable except as a CGI
program (the command line doesn't work anymore). This will change in a later version.
- Improved the layout and wording of the startup screen, and added log filters.
| Version 2.0b1, released August 22, 1997 |
New features in version 2.0b1:
- Changed the fundamental stats generation model. Version 1.0 ran as a command line program, read a log file
and generated a large number of interlinked HTML pages representating that file.
Version 2.0 runs as a CGI script, reads a log file (and/or a database; see below) and generates a single HTML page,
which is immediately displayed in the browser. This page
corresponds roughly to one of the pages generated by 1.0. Where the page generated by 1.0
contained links to other pages, the page generated by 2.0 contains links which invoke
Chartreuse Cartouche again to generate the desired page. This model solves the disk space usage
problem of 1.0-- unless a disk database is used, 2.0 uses almost no disk space.
- Added a persistent disk-based database. 1.0 read the log and stored the information in memory
before generating pages, potentially using huge amounts of memory. 2.0 can still keep the database
in memory if there is enough memory, but also has the option of writing it to disk as necessary,
to reduce memory usage. Furthermore, this database can be read quickly by later invocations of
Chartreuse Cartouche, to allow much faster browsing than would be possible if the entire log file
had to be read in every time.
- Made the stats structure more general. 1.0 had two views-- a path/date/host breakdown of an access log
and a referrer breakdown of a referrer log. 2.0 allows arbitrary views of almost any log file.
For instance, it is possible to have a path-only, path/host, path/date, path/size/host,
response/date/path, etc. breakdown of a web access log file. In general, any log file
(not just a web log file) can be broken down on any axes.
- Added on-line modification of the options. In 1.0, all options were set from the command line,
or from a configuration file. 2.0 can still run in this manner, but for ease of use it can
be run entirely through a web browser. CGI forms and links provide full control over all of
Chartreuse Cartouche's options. This allows Chartreuse Cartouche to be fully configured and
run from any machine which can web to the server.
- Moved all documentation fully on-line. 1.0 had its documentation online in the sense that
it was available on the web as HTML documents. 2.0 takes this a step further, and builds
the documentation directly into the Chartreuse Cartouche program. Any option appearing
in the HTML output of Chartreuse Cartouche can be clicked to see a complete description of
its purpose and usage.
- Dozens of little tweaks which went naturally with the above. The number of options have
been significantly reduced, usually by replacing them with new, more general options.
- And much more that I've forgotten.
See also the
Chartreuse Cartouche 1.0 Version History.
Back to the main beta page