History of what has been done so far
2009-11-23
-
'Deadlock' and 'Errorlog' tabs now works again.
-
two new tabs 'System Load' and 'Temp Db'
'System Load' needs ASE 15.5 or higher and shows information from the monSysLoad, which can help you
determine how long the "run queue length" is. Which is almost the same as 'load average' on Unix systems.
'Temp db' shows you various information about tempdb usage.
-
The filter now also works for 'Deadlock' and the 'Errolog' tabs
-
'Diff' and 'Rate' counters choice panel are now disabled if there are no diff columns specified
-
introduced 'needAseVersion' and 'needAseConfig' for all CM's
This means it's easier to specify lowest ASE version for this "tab" to start work.
The same goes for configuration.
If version or configuration is not satisfied a "watermark" text on the tab will show what was wrong.
-
In all tabs, a new time option were introduced, the 'postpone'...
This means that for tabs that we do not want to sample as often as we usually do, we can set a
minimum time to wait before we refresh this tab. This could be used for tabs like 'Cached Objects'
which could be "heavy" for the system to sample on every sample interval.
-
The summary panel now also contains a bunch of new counters.
-
If ASE is between 15.0.3 esd#1 and 15.0.3 esd#3 and sp_configure 'capture missing statistics' is true.
The CR 581760 makes ASE to capture statistics for MDA Tables, which might lead to a full
transaction log in the master database.
So check for a "near full" transaction log and do 'dump tran master with truncate_only' if we are near.
-
If the stored procedure 'sp_missing_stats' in the tab 'Missing Statistics' is missing.
It will automatically be installed if you have 'sa_role' otherwise the "watermark" will indicate
this it's missing and needs to be installed.
The procedure will not be re-installed every time, it checks for creation time, and will only
be re-created when a new version of it is applicable.
-
The watermark functionality can now handle multiple rows.
-
Also a lot of small changes.
2009-11-06
-
Automatically open the log viewer when a log message with the severity ERROR or
higher is logged.
LogViewer also remembers the window size and position.
-
A new "tab" that shows what tables/columns the optimizer is missing statistics on.
This needs ASE 15.0.3 ESD#1, and sp_configure 'capture missing statistics', 1
A word of warning so for: The transaction log in the master database will/could fill up due to
a bug in ASE where missing statistics on mon* tables is updated in master..sysstatistics
A stored procedure sp_missing_stats, which (for now) will have to be manually
installed before this tab will work...
-
Un-selecting rows can now be done in JTables, also the background color could be
set with the properties:
table.setSelectionBackground={true|false}
table.setSelectionBackground.r=intVal
table.setSelectionBackground.g=intVal
table.setSelectionBackground.b=intVal
-
When a database connection is lost, better GUI error handling is applied.
Meaning show LogViewer, set the watermark to "Not Connected".
-
Changes on the Connect-on-startup, now using logic from the ConnectionDialog.
-
Also a lot of small changes.
2009-05-21 - 2009-11-01
-
A long period has passed since I did anything, this was due to I was in an accident
where I broke/crushed both my hands/wrists, so I had problems coding...
But now I'm back again :)
2009-05-20
-
Changed the Color of the timeLine marker to dark gray.
-
Added tick markers on the timeLine slider.
-
Separating the TrendGraph's data into TrenGraphDataPoint class
This makes it possible to save the graph data in it's own table,
which makes it easier when reading "off-line" data in a later stage
-
Added some AseMon* dictionary tables, which makes it easier when
reading "off-line" data in a later stage
-
In "off-line" noGui mode, when connecting, try to enable basic
monitor settings if not already configured.
2009-05-15
-
A first version where you can view older Counter Values
All sampled counters are stored In-Memory, the counters are
discarded from memory when "Trend Graph History in Minutes" expires.
This means as long as the values are shown in the graph, they stays in memory.
To enter Navigation mode for viewing the in-memory counters is done by
double-click in one of the graphs, or press the "View Counters" in the
toolbar. Navigation is done with the slider in the toolbar or by
double-click on a interesting point in one of the graphs.
A vertical line in the graphs represents where we are in the in-memory counters.
2009-04-30
-
Used defined graphs can now do one trace line for every row.
The 'graph.type' should then by 'byRow'
'graph.data.cols' should contain the column name to get value from
'graph.data.methods' can be 'absVal', 'diffVal' or 'rateVal'.
'graph.data.labels' can be a column name to get value from, or if that
name is not found the values for the Primary Key will be used.
So if you for example specify '-pk-', which is a unknown column name
Then the PK values for that row will be used as the "label" for that line.
-
Properties MenuItem on Counter Tab, this so we can see what SQL that is
executing when we refresh the Counter Model.
-
Wizard for crating User Defined Counters
2009-04-09
-
Added panel 'Active/Process Statements'.
-
Moved monProcessObject from asemon.properties into GetCounters.
-
Added a summary page in the offline wizard.
-
The offline is started from asemon script using parameters.
asemon -nogui -config
-
The offline is completely dependent on this wizard generated
config file. (Used to use asemon.properties).
The wizard now copies the necessary info from asemon.properties
to the generated file.
2009-04-08
-
New web adress 'www.asemon.se', so references was changed for this
-
Started to work on Storing Counter Data from the GUI
A new Connection dialog has been made... but isn't finished yet.
It works to setup a Counter Storage, but it needs more work.
Offline connect doesn't work yet, I can't yet read stored data and
present it in the GUI, thats the next step.
2009-03-31
-
Checking for updates on the net (but I need to change the web address later)
But I need to implement the web page for new downloads etc...
-
Re-coded MainFrame and moved to GUI
-
Trendgraph
- setChartMaxHistoryTimeInMinutes() could get garbled.
- Add dummypoint when not connected to avoid NPE from ToolTip.
- also moved TrendGraph
2009-03-26
-
Capture SQL on the right click menu
-
Copy table information to clipboard (but: needs more work)
-
Changed a bunch of the Icons and added icons to the GTabbedPane,
right click menu, goto tab.
-
SQL Window can now show graphical showplan views (same as dbisql).
Some graphical changes as well, print/raiserror messages now comes
in-line with the result sets (priviously it was just at the end)
You can also select cells to copy+paste values from.
Messages are now also copy+paste enabled.
-
Using MigLayout in summary panel for graphs now, which makes it a bit
nicer for resizing... the graphs grows in height now as well.
-
For the filter "Do not show unchanged counter rows" I added the abbility
to dissregard some columns. So even if it's a diff counter and it's NOT
zero it will still filtered out that column.
This is good for "WaitTime" column in the "Processes" tab. Because it's
always contains values... I still want to see the diff/rate values.
But I don't want to use them (as valid values) in the filter check.
-
The filter "Do not show unchanged counter rows" has also been moved from
the Options panel to the Filter panel, where it really resides.
This also made me move the "Counter Type" panel one snap left...
-
Selected row in the table is still selected after a "data refresh"
and hopefully it's the same row even if it has changed location
due to resort of the new/refreshed data...
-
MainFrame - status panel (at bottom) now has Memory information
This class will be needed to recode soon - the code is ugly...
-
If data collection is paused, a watermark text will inform you
about the Pause...
-
The AboutBox panel now contains
- History
- Todo
- System Properties
2009-03-16
-
Moved the negativeDiffCounters to Zero so we can choose this
for each panel....
-
Added icons for the TableCntrPanel and most of the CM's
-
Some small changes on the xmenu stuff.
2009-03-13
-
ALOT OF THINGS WHERE DONE
-
Moved a lot of files around, the goal is that all GUI components should be in 'gui' package
-
Configuration.java: moved to utils package, and added encrypt/decrypt of passwords
-
AseMonitoringConfig -> gui.AseMonitoringConfigDialog: remade gui layout
-
CountersModel Made it a TableModel... there is a lot more needed to be done on this one
and that will be done in next check-in
-
A new dictionary for displaying ToolTip on WaitEventId
-
Moved Version information into its own class 'Version.java'
-
The ConnectionDialog has been totally rewritten
-
Auto login ability on startup
-
A logAppender for log4j that has a Gui Window so we can look at the errorlog graphically
and also change the log level "on the fly", but the log level is not saved into the
properties file. We only want to change it during this session.
-
Total new Dialog for changing some small properties (only Refresh rate for now)
-
A new 'Query window' has been added to the MainFrame menu. This will open a GUI 'isql'
-
TabularCntrPanel has been rewritten:
- The TabbedPane has been rewritten to do "dock/undock" tabs into windows and
right click popups on the Tabbs that handles more stuff.
- now using MigLayout as it's Gui layout manager
- Using JXTable instead of JTable
- Sorting is done by JXTable
- Filtering is done by JXTable
- Highlighting/Color setting is done by JXTable (in JTable this is CellRenderer)
- right-click on the table now uses 'xmenu', which is specified in the config file
so now it's really easy to add your own right click menu items.
Default menu items is 'stored proc text, sp callstack, optdiag, sp_help, sp_spaceused...'
-
A bunch of new icons has been added
-
AboutBox total rewrite
-
And a lot more small stuff
-
NOTE: A lot more is needed to be changed and cleanup, so this is just a partial check-in.
-
Reine Changed TrendGraph to use JChart2D instead of JFreeChart, this due to
performance reasons when we had *long* "Graph History Time".
This was merged in from the "trunk".
2009-02-12
-
Multiple ResultSets is now handled
-
Watermark on the summary graphs is now on the scroll panel,
this makes the watermark more center of the view/what we see...
2009-02-03
-
User Defined Graph can be added
this probably needs more work, but for now it's "ok"...
-
SummaryPanel was "redesigned" and moved to GUI package
-
Default ASEMon Icon was changed (added more blue on the table)
2009-01-23
-
Sometimes that graphs did not get updated in the summary panel.
This was a timing problem, when data is captured, it's done with
it's own thread. If the "get data" thread was not complete before
we wanted to update the graphs, the graphs was not updated.
So now I wait for the "get data thread" to complete before continue.
-
The Toolbar was added.
-
The first glans at "offline setup wizard" was created (need more work here)
-
Changed the j4log from 1.2.8 -> 1.2.15
-
Some small stuff as well
-
Default ASEMon Icon was changed
2008-10-31
-
Fixed bug in summary panel counte. If ASE listens to several networks
only show the first "min()" listener. otherwise the subquery will fail...
-
Added Wrap/Scroll capability in the TabPanel
2008-10-27
-
Fixed bug in engine average calculation...
in version X i changed getRateValueAvg to discard 0.0 as "rows"
this was to support the Average Service Time in DeviceIO graph better.
But now I'm using getRateValueAvgGtZero instead.
-
Added the "WATER MARK" text to TabularControlPanel and SummaryPanel
to easier know what is happening behind the scenes... are we connected...
-
Added some descriptions for Tooltip on the TABS.
-
added methods: isMonConnected(), getMonConnection() this will hopefully
be used to distinguish between OFF-Line mode and ON-Line mode.
2008-10-24
-
Added this "version history" comment
-
Doing "late initialization" of CountersObject, which means that
we can create the GUI graphics and decide later what SQL statement to
use dependent on what version the ASE Server is of.
-
Took away a lot of static variables in GetCounters and MainFrame
2008-10-16
-
Major thing is NO-GUI mode is configurable and can persist the
counters in a JDBC session. (ASE and H2 has been tested)
H2 would be the preferred option. This so we can store the
counters in another server/database store than the one we
pulling out data from. Using the H2 DB it would also be
easier to sample ASE counters on Unix systems and later on
view them on a Windows machine.
-
some changes to "capture SQL" tool.
-
saving more options in the "save props" file!
-
And a lot more small things.
200x-xx-xx
-
Started from asemon 0.96 by Jean-Paul Martin
Redone a whole lot of things
-
Automatic resize of columns headers in tables
-
Cell renders are not dependent on Object type, but it's now
using method calls to decide what to do when rendering.
-
Do not remember all things I did back then