• Stars
    star
    160
  • Rank 233,861 (Top 5 %)
  • Language
    Java
  • License
    GNU General Publi...
  • Created over 13 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

ASH Viewer provides a graphical view of active session history data within the Oracle and PostgreSQL DB

ASH Viewer

ASH Viewer provides graphical view of active session history data within the database.

Supported databases: Oracle, PostgreSQL

ASHViewerMainPage

Table of contents

Quick start

  • Download the latest binary file.
  • Download JDBC driver for your database (Oracle, PostgreSQL)
  • Unpack the binary archive and run ASH-Viewer.jar
  • Open connection dialog and populate them with data (URL for Oracle database: jdbc:oracle:thin:@host:port:SID)

ASHViewerConnectionDialog

  • Press Connect button and start to monitor your system and highlight a range to show details.

ASHViewerTop

  • Review Raw data interface to gain a deep insight into active session history

ASHViewerRaw

  • Double-click on Top sql & sessions interface to get window with ASH details by sql or session ID

    i. SQL ASHViewerSql

    ii. Session ASHViewerSession

How it works

Active Session History (ASH) is a view in Oracle database that maps a circular buffer in the SGA. The name of the view is V$ACTIVE_SESSION_HISTORY. This view is populated every second and will only contain data for 'active' sessions, which are defined as sessions waiting on a non-idle event or on a CPU.

ASH Viewer provides graphical Top Activity, similar Top Activity analysis and Drilldown of Oracle Enterprise Manager performance page. ASH Viewer store ASH data locally using embedded database Oracle Berkeley DB Java Edition.

For Oracle standard edition and PostgreSQL, ASH Viewer emulate ASH, storing active session data on local storage.

** Please note that v$active_session_history is a part of the Oracle Diagnostic Pack and requires a purchase of the ODP license.**

Build

mvn clean package -DskipTests=true

Security

Encryption and Container settings provide security for database passwords (go to Other tab -> Security block)

Encryption

Encryption setting has AES and PBE options

  • AES - Advanced Encryption Standard (AES) with 256-bit key encryption, from the Bouncy Castle provider, FIPS compliant algorithm;
  • PBE - Password based encryption (PBE) in PBEWithMD5AndDES mode with secret key (computer name or hostname). This option is weak and deprecated, please use AES when possible;

Container

It's the way to store your encrypted data

  • DBAPI - You sensitive data stored in Windows Data Protection API (DPAPI), maximum protected, Windows only;
  • Registry - OS System registry storage using java preferences API - weak, but better than Configuration;
  • Configuration - All data in local configuration file - weak, not recommended;

Recommendations

  • use AES encryption and Windows Data Protection API (DPAPI) whenever possible;
  • do not use PBE copied configuration on another host, you need to change password with a new secret key (always do it for password leak prevention).

Bugs and feature requests

Have a bug or a feature request? Please open an issue

Downloads

Based on

License

GPLv3 license

Code released under the GNU General Public License v3.0

Contact

Created by @akardapolov - feel free to contact me!