Code Monkey home page Code Monkey logo

ash-viewer's People

Contributors

akardapolov avatar cvas71 avatar dependabot[bot] avatar rstribrny avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ash-viewer's Issues

Сильно не хватает вкладки на основном экране - текст sql, можно было бы и план запроса туда же, но уже менее критично.

Выбрав запрос из топа нельзя сразу же увидеть текст запроса, надо проваливаться в него, собирается много данных - когда он исполнялся, график строится, ... и только там видно уже запрос. Причем можно было бы брать текст запроса из full_text, он там с исходным форматированием.
Теперь план запроса только одним способом - через таблицу - раньше был еще текстом. Но это не так принципиально.

take too long in open

Hi team, app is great but take too much long time in open when you try in Oracle RAC with too many records in the v$active_session_history.

I try to increase java memory to 8Gb (java.exe -Xmx8096m -jar ASH-Viewer.jar) but not helps.

Can you add and option to start the app reading only 5 minutes of data.
I find 2 sql when you load the data (OracleEE.java and OracleEEObject.java )
can you generate a version to start the app loading only 5 minutes of data (or N in a parameter)

In OracleEEObject.java
change
String sqlTextAsh = "select a., b.object_name, b.object_type, subobject_name "
+ "from v$active_session_history a, all_objects b where a.current_obj# = b.object_id(+)";
for
String sqlTextAsh = "select a.
, b.object_name, b.object_type, subobject_name "
+ "from v$active_session_history a, all_objects b where a.current_obj# = b.object_id(+) "
+ "and a.sample_time <= sysdate - interval '5' minute";

In OracleEE.java
change
String sqlTextAsh = "SELECT * FROM v$active_session_history";
for
String sqlTextAsh = "SELECT * FROM v$active_session_history where sample_time <= sysdate - interval '5' minute";

RAC Support Request

Hi,

This is awesome tool, is it possible to provide RAC support? Will changing the v$ to gv$ views will do or is it harder than what it looks like. Curious to know why RAC support was not initially developed?

Thank you,
Anjul

ASH Viewer API

Hi
I was working with the ASH viewer and found it very fascinating.
I just wanted to know if the ASH Viewer would expose an API so that I could write a custom code to capture metrics which I desire to monitor.
Please help me in this.
Also, I would be thankful if you can suggest a way to use a Listener kind of thing to capture metrics from the ASH Viewer.
Thanks in advance.

ASH Viewer 4.3.3 with thick Oracle client version 19 on Windows 10?

(Question more than issue) With ASH Viewer 3.5.1, a thick Oracle client version 19 on Windows 10, I got it working on various Oracle database versions 10.2-12.2.
But for Oracle 19.3 I got java.sql.SQLException: ORA-28040: No matching authentication protocol. Fair enough.

With ASH Viewer 4.3.3, the “Connect to database..” screen has a field for URL and shows faded syntax to use an Oracle thin/instant client. I tried various thick syntax combinations but get error “java.sql.SQLException: Cannot load JDBC driver class ‘oracle.jdbc.driver.OracleDriver’ …”.
Can I use the thick Oracle client version 19 on Windows 10?

UMD Research Study

Hi there,
We are researchers from the University of Maryland conducting a study about software code reuse. If you are interested in helping us in this study​ through ​a short interview about this project, please contact us on ​[email protected]​ for more information​. You will be ​compensated for your time.

Thanks
Ahmed

Невозможно подключиться к базе. версия 4.3.1

Добрый день.
Сразу 2 связанных проблемы:

  1. Невозможно подключиться к базе после закрытия приложения. В окне подключения красуется надпись Running без возможности входа. Даже в оффлайн режиме, чтобы посмотреть историю. Чтобы войти приходится копировать соединение. Возможно это происходит в следствии:
  2. После того как рвется соединение с базой, например при выключении базы, приложение не восстанавливает соединение после того, как база становится доступной. Версия 3.5.1 даже после обрыва соединения умудряется его восстановить и нормально продолжать снимать активность.
    изображение

Wait time can be -1 (WAITED SHORT TIME) or (WAITED KNOWN TIME) for a previous wait

I have a comment regarding WAIT_TIME which is retrieved in line 349.

Wait time can be -1, which means state = WAITED SHORT TIME (= less than 1 ms).
Wait time can be any number, but the state = WAITED KNOWN TIME, which means 'Duration of the last wait is specified in the WAIT_TIME column'.

The first wait time -1 will trigger a 100% cpu for that session I think, which should be 1/100 of a second of cpu.
The second wait shows the last wait time of a previous wait, but is still accounted for in a current cpu wait.
If two sessions have these waits, they will both be reported as using cpu, but the are not doing anyting (much). I see this a lot for APEX_REST_PUBLIC_USER.

Session state should also be considered looking at these values:
https://docs.oracle.com/cd/B28359_01/server.111/b28320/dynviews_3023.htm#r18c1-t30

Regards, Ian Hoogeboom.

No option to stop and connect to a different database instance

There is no option to disconnect and reconnect to different database without closing and reopening the tool.

also, when tool was killed from task manager and relaunched, the connect button shows as running and does not allow to reconnect to the database.

image

Top activity script

Hi
First I'm sorry my English.
I need to solve the following:
Please monitor the top requests, make constant requests and any deviations (new requests, etc.) please throw in the mail (Oracle Database).
In the end, I have to send the information as in the picture below

top_activity

Привет
Мне поставили задачу: просьба мониторить топ запросы, составь постоянные запросы и любые отклонения (новые запросы и т.п.) просьба скидывать на почту.
т.е. я должен высылать информацию как на картинке выше

login

hi:
URL login is too cumbersome, I think the previous 3.5 version was more convenient

Takes 5+min to launch the tool

the tool seem to pull the last 60min data from ash and becomes extremely slow to launch under load as it tries to load last 60min data.

can we get an option to load ash data start from the point of launch/click connect to database.

if the database is under heavy load from users. it takes large amount of time to start up

incomplete SQL text

when I select top activity -> top sql & sessions -> SQL text:

SQL command is not complete

History Top Activity chart is misleading - spikey instead of solid!

I ran pgbench against a postgres database for 10 minutes. If I then later go back and view the history data, the "Top Activity" shown below does not present a solid chart, instead it shows a series of spikes.
I then selected the area between 2 spikes and the "Top sql & sessions" display does contain data.

So I claim the data is properly retained, but not displayed correctly in the Top Activity chart.
I will attach an image of a screen shot to illustrate the issue.

Idea for OracleSE: filling the gaps with Statspack

Hi,
With OracleSE we have no data outside of the time when ASH-Viewer is connected. But we often have Statspack running maybe every hour or shorter (snap level 0 every 5 minutes is possible). I got the idea to fill the gaps with info from Statspack (waits events + CPU from time model) and normalizing that to look like ASH samples. But it seems that the visualization expects one sample per second, right? If I have, say, 2 active sessions in samples every 5 minutes it shows as very small spikes every 5 minutes.
Ideally, it would be great to be able to ingest aggregated data, with AAS count rather than deduplicating the samples from statspack to look like ASH. Do you think it is easy to adapt the graph vizualizer to that?
I can provide the query on stats$system_event, stats$sys_time_model, stats$snapshot giving SAMPLE_TIME,SESSION_STATE,WAIT_CLASS,EVENT#,EVENT plus AAS for this sample/event and I think a union all to the current one is sufficient.
Franck

Copy Connection?

Hello, lost the copy connection button. Can you turn it back?

Empty gantt chart for last row in sparsed data

Hi!

Probably in this code we have the issue:

public void unloadCacheToDB15(long currentDbSysdate){
if (hashmap15SecCache.entrySet()
.stream()
.max(Map.Entry.comparingByKey())
.isPresent()){
long maxV = hashmap15SecCache.entrySet()
.stream()
.max(Map.Entry.comparingByKey())

image

Raw data's are saved.

It seems the fifteens second range not stored correctly, see here carefully: https://github.com/akardapolov/ASH-Viewer/blob/master/ashv/src/main/java/store/OlapCacheManager.java#L133

Thanks,
Alex.

Saved configuration

I used ASH Viewer for monitoring 20+ DB on each PC (24*7)
Every time after PC reboot I must open ASH Viewer for each DB, resize window and place new window to it location on PC screen
Can you develop saved configuratuin for multibase monitoring?
Thanks in advance!

NPE while loading raw data in offline mode

Exception in thread "Thread-9" java.lang.NullPointerException
at store.DatabaseDAO.lambda$getMatrixDataForJTable$1(DatabaseDAO.java:116)
at java.util.ArrayList.forEach(ArrayList.java:1249)
at store.DatabaseDAO.getMatrixDataForJTable(DatabaseDAO.java:114)
at gui.table.RawDataTable.loadDataToTableModel(RawDataTable.java:220)
at gui.table.RawDataTable.access$400(RawDataTable.java:33)
at gui.table.RawDataTable$1.run(RawDataTable.java:127)

compatibility with Oracle 18c

Hello,

when trying to connect to a 18c database
using ashv-3.5.1-bin
I get error:
ORA-28040: No matching authentication protocol

After updating ojdbc6.jar JDBC driver to ojdbc8.jar
I get error:
SQL Exception occured while connection pool initialize:
Can't find class for driver: oracle.jdbc.pool.OracleDataSource

Any Idea ?
Thanks in advance
Regards
PAscal

Create new connection dialogue

Please change in the "Connect to database..." window the button label from "Open jar" to "Open JDBC Driver jar"
... to be more intuitive

Please make "Edit" button instead of the checkbox "Edit"

Please provide a label with the sample URL. E.g.: "jdbc:oracle:thin:@host:PORT:SID"

Connection dialog 'Enterprise' should be 'Diagnostic Pack'

Hello,

Using Enterprise features like ACTIVE_SESSION_HISTORY, DBA_HIST_* and AWR functionality is not something you can use if you only have an 'Enterprise' version. One needs to have payed for the Diagnostic pack option:

  • The V$ACTIVE_SESSION_HISTORY dynamic performance view and its underlying table
  • All data dictionary views beginning with the prefix DBA_HIST_
  • The DBMS_WORKLOAD_REPOSITORY package is part of this pack.

In the login dialog one can choose 'Enterprise' or 'Standard', but Enterprise is not enough. I have seen customers using this tool, with 'Enterprise' option, but they do not have the 'Diagnostic' option, so therefor are not allowed to use it. They should have selected 'Standard'.

Is it possible to change the label (or drop down options) to something like 'Enterprise WITH Diagnostic pack license' (Yes/No) ?

I know it's a DBA's responsibility, but now it makes more clear that this is allowed to be used. A check for the 'CONTROL_MANAGEMENT_PACK_ACCESS' parameter is very luxury, and maybe the best way to push the responsibility to the DBA's.

The Diagnostic Pack option costs $7500 per CPU. I don't think you want to have troubles with this when customers think that selecting 'OracleEE' will be enough.

Regards, Airell.

Подключения 3-й ветки к Оракл 19С

Добрый день, спасибо Вам за Ваш труд! Приложения классная.

Недавно обновили базу до 19С, после ASH Viewer 3.5 не подключается к БД.
Скачали новую версию, но тут сессия зависает и не восстанавливается.
Вопрос как настроить версию 3.5 так чтобы работало с Оракл 19С?
Спасибо.

Error java.lang.ArrayIndexOutOfBoundsException

Hi.

During making connection to one of my Oracle databases 19c, getting error:

19.06.21 14:05:55.095 [main] INFO  Main - Start application
19.06.21 14:05:55.688 [main] INFO  BasicFrame - Start instantiating new BasicFrame
19.06.21 14:06:00.299 [main] INFO  ConnectToDbAction - ConnectToDbAction button pressed
19.06.21 14:06:23.318 [Thread-2] INFO  GetFromRemoteAndStore - Start loading
19.06.21 14:06:23.433 [Thread-2] INFO  GetFromRemoteAndStore - Start loading olap
19.06.21 14:06:29.157 [Thread-2] INFO  GetFromRemoteAndStore - Start loading stacked chart
java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50
        at org.jfree.data.extension.impl.XYDatasetSelectionExtension.initSelection(XYDatasetSelectionExtension.java:142)
        at org.jfree.data.extension.impl.XYDatasetSelectionExtension.datasetChanged(XYDatasetSelectionExtension.java:111)
        at org.jfree.data.general.AbstractDataset.notifyListeners(AbstractDataset.java:189)
        at org.jfree.data.general.AbstractDataset.fireDatasetChanged(AbstractDataset.java:172)
        at org.jfree.data.xy.CategoryTableXYDataset.add(CategoryTableXYDataset.java:118)
        at gui.chart.CategoryTableXYDatasetRDA.addSeriesValue(CategoryTableXYDatasetRDA.java:34)
        at core.processing.GetFromRemoteAndStore.lambda$null$8(GetFromRemoteAndStore.java:252)
        at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
        at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
        at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658)
        at core.processing.GetFromRemoteAndStore.lambda$null$9(GetFromRemoteAndStore.java:249)
        at java.base/java.lang.Iterable.forEach(Iterable.java:75)
        at core.processing.GetFromRemoteAndStore.lambda$loadToMainStackedChart$10(GetFromRemoteAndStore.java:247)
        at java.base/java.lang.Iterable.forEach(Iterable.java:75)
        at core.processing.GetFromRemoteAndStore.loadToMainStackedChart(GetFromRemoteAndStore.java:247)
        at core.processing.GetFromRemoteAndStore.loadDataFromRemoteToLocalStore(GetFromRemoteAndStore.java:152)
        at gui.connect.ConnectToDbArea.loadObjectsByConnectionName(ConnectToDbArea.java:514)
        at gui.util.ProgressBarUtil$1.run(ProgressBarUtil.java:79)
19.06.21 14:06:46.965 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading
19.06.21 14:06:47.048 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading olap
19.06.21 14:06:48.117 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading stacked chart
java.lang.ArrayIndexOutOfBoundsException
19.06.21 14:06:54.237 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading
19.06.21 14:06:54.328 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading olap
19.06.21 14:06:55.254 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading stacked chart
java.lang.ArrayIndexOutOfBoundsException
19.06.21 14:07:00.995 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading
19.06.21 14:07:01.093 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading olap
19.06.21 14:07:01.654 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading stacked chart
java.lang.ArrayIndexOutOfBoundsException
19.06.21 14:07:07.236 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading
19.06.21 14:07:07.318 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading olap
19.06.21 14:07:07.647 [pool-2-thread-1] INFO  GetFromRemoteAndStore - Start loading stacked chart

Mac OS 10.15.7

ashv version is 3.5.1

$ $JAVA_EXE -version
java version "11.0.6" 2020-01-14 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.6+8-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.6+8-LTS, mixed mode)

Days limits for stored ASH history

Need option for number of days for stored ASH History, because I have limited disk space on HDD.
By other words - I need "autocleaner" option.

History data not working properly

Hi, i have a couple of questions?
1.when i am checking in ash-viewer history button. when i tried to pull week data it is not returning weekly data. it is just returning 1 day data. other days are empty. Even 1 days data is not full couple of hours it is showing
2. Is there any way you can include more historical data 1 month data or 2 month data in the history list?
3. When trying to connect Rac databases and using scan address with service_name it is not working. You have to mention Sid only. Could you please add this option also?

Совсем не работает

После того, как делаю конфиг, сразу же падает. после этого вообще не запускается.
Если конфиг убрать, то сразу же запускается.
конфиг

!!config.profile.ConfigProfile
configName: maindb
connProfile: {connName: maindb, driver: oracle.jdbc.driver.OracleDriver, jar: 'D:\Distrib\СУБД\ashv-4-bin\lib\ojdbc6.jar',
  password: XXX, profileName: OracleEE, url: 'jdbc:oracle:thin:@db.XXX.ru:1521:MAIN',
  userName: arkanovas}
olapRetainDays: 101
rawRetainDays: 101
running: false
sqlColProfileList: null
D:\Distrib\СУБД\ashv-4>"C:\Program Files (x86)\Java\jre1.8.0_211\bin\java.exe" -Xmx1024m -jar ASH-Viewer.jar 
03.04.20 12:44:23.290 [main] INFO Main - Start application
03.04.20 12:44:23.492 [main] INFO BasicFrame - Start instantiating new BasicFrame 
Exception in thread "main" org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1
    at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:218) 
    at org.yaml.snakeyaml.reader.StreamReader.ensureEnoughData(StreamReader.java:176) 
    at org.yaml.snakeyaml.reader.StreamReader.ensureEnoughData(StreamReader.java:171) 
    at org.yaml.snakeyaml.reader.StreamReader.peek(StreamReader.java:126) 
    at org.yaml.snakeyaml.scanner.ScannerImpl.scanToNextToken(ScannerImpl.java:1177) 
    at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:287) 
    at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:227) 
    at org.yaml.snakeyaml.parser.ParserImpl$ParseImplicitDocumentStart.produce(ParserImpl.java:195) 
    at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:158) 
    at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:148) 
    at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:107) 
    at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:141) 
    at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:525) 
    at org.yaml.snakeyaml.Yaml.loadAs(Yaml.java:519) 
    at config.yaml.YamlConfig.loadConfigurationFile(YamlConfig.java:73) 
    at config.yaml.YamlConfig.lambda$loadConfigsFromFs$0(YamlConfig.java:61) 
    at java.util.ArrayList.forEach(Unknown Source) 
    at config.yaml.YamlConfig.loadConfigsFromFs(YamlConfig.java:58) 
    at config.yaml.YamlConfig.<init>(YamlConfig.java:35) 
    at config.yaml.YamlConfig_Factory.newInstance(YamlConfig_Factory.java:45) 
    at config.yaml.YamlConfig_Factory.get(YamlConfig_Factory.java:35) 
    at config.yaml.YamlConfig_Factory.get(YamlConfig_Factory.java:11) 
    at dagger.internal.DoubleCheck.get(DoubleCheck.java:47) 
    at core.manager.ConfigurationManager_Factory.get(ConfigurationManager_Factory.java:36) 
    at core.manager.ConfigurationManager_Factory.get(ConfigurationManager_Factory.java:11) 
    at dagger.internal.DoubleCheck.get(DoubleCheck.java:47) 
    at gui.actions.ConnectToDbAction_Factory.get(ConnectToDbAction_Factory.java:35) 
    at gui.actions.ConnectToDbAction_Factory.get(ConnectToDbAction_Factory.java:10) 
    at dagger.internal.DoubleCheck.get(DoubleCheck.java:47) 
    at gui.MainWindow_Factory.get(MainWindow_Factory.java:62) 
    at gui.MainWindow_Factory.get(MainWindow_Factory.java:13) 
    at dagger.internal.DoubleCheck.get(DoubleCheck.java:47) 
    at config.dagger.DaggerMainComponent.createMainWindow(DaggerMainComponent.java:205) 
    at Main.main(Main.java:16) 
Caused by: java.nio.charset.MalformedInputException: Input length = 1 
    at java.nio.charset.CoderResult.throwException(Unknown Source) 
    at sun.nio.cs.StreamDecoder.implRead(Unknown Source) 
    at sun.nio.cs.StreamDecoder.read(Unknown Source) 
    at java.io.InputStreamReader.read(Unknown Source) 
    at org.yaml.snakeyaml.reader.UnicodeReader.read(UnicodeReader.java:125) 
    at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:183) 
    ... 33 more 

Some Java errors when clicking various places for info

While trying to get the lower (down) pane to display some info there , the following java error appears and in some places no info appears... ( It was tricky to find the way to display some info in lower pane , for those cases that it does not produce error) :
Exception in thread "AWT-EventQueue-1" java.lang.NullPointerException
at org.jfree.chart.ChartPanel.fireReleaseMouse(ChartPanel.java:3523)
at org.jfree.chart.ChartPanel.mouseReleased(ChartPanel.java:1974)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:290)
at java.awt.Component.processMouseEvent(Component.java:6539)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6304)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:733)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
what could be ? my javs (JDK) version is : java version "1.8.0_231"

enhancement: record / report performance metrics

The data reported is hard to quantify with regards to "work obtained". We end up running pgadmin to manually record other metrics such as commits, rollbacks, active connections, etc. pgadmin can not record data. So we need to manually record these metrics.

Other items like deadlocks and lock timeouts etc would also be useful. Note that delta metrics (i.e. counts per second) would be most useful as opposed to raw accumulated counts.

I am so unsure how best to display this extra data - an overlayed line graph seems appropriate? Or maybe a separate collected data stream with a separate graph using the same timeline horizontal access?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.