Re: Performance Monitoring

  • From: "Tom Dale" <dmarc-noreply@xxxxxxxxxxxxx> ("tom.dale")
  • To: cary.millsap@xxxxxxxxxxxx
  • Date: Fri, 9 Sep 2022 11:04:49 +0100

While we are talking performance monitoring, we use dbscout



http://dbscout.io/dbs/



Works for Standard Edition or EE without any extra packs.



Demo



http://dbscout.io



user : demo@xxxxxxx

pw   : 123456



Disclaimer, I wrote it.

On Tue, Aug 23, 2022 at 4:34 PM Cary Millsap <cary.millsap@xxxxxxxxxxxx>
wrote:

We have used extended SQL trace data in conjunction with the client's use
of Dynatrace before. Here's how it happened:

   1. Client had a complex network of overnight batch jobs. The aggregate
   duration of this batch work kept creeping longer and longer until it
   affected their customers, to whom they had to pay cash penalties for
   missing their SLAs.
   2. We recommended tracing the entire batch. Everything. Literally
   dbms_monitor.database_trace_enable.
   3. The client was fearful that so much tracing would cause an
   unbearable measurement intrusion effect.
   4. They agreed to test it. They traced the whole production database
   for an hour. The Dynatrace data for execution durations showed that there
   was no discernable difference between the performance with trace enabled
   and with trace disabled. This gave them confidence to trace the whole
   night's job.
   5. The trace resulted in about 5,000 trace files. No big deal for our 
Method
   R Workbench <https://method-r.com/software/workbench> product to eat
   all that and show start and end times, resource consumptions,
   network round-trips, etc. (and create a detailed HTML report!) for every
   individual program that had run.
   6. We used the Method R Workbench "Details by file, for plotting in
   Excel" feature to create data that's easily ingestible by Excel.
   7. In Excel, I created a Gantt chart that showed the time
   relationships among all ~5,000 files. It took me about an hour to do that.
   Creating the Gantt charts was a process I had to begin by googling.
   8. Once we saw the Gantt chart, the problem stuck out like a sore
   thumb. Everybody could see it, both technical and non-technical. The dialog
   went like this:
      1. "Why is there a huge gap in time between the end of *this*
      program's execution and the beginning of *that* program's
      execution?"
      2. "I don't know, what are the two programs?"
      3. "Well, *this* program's final SQL statement was SELECT ABC...,
      and *that* program's first SQL statement was SELECT DEF... So it's
      between those."
      4. "Oh! I know exactly where in the application that is. It was #42
      on my list of things to look at someday. I had no idea it was actually 
our
      bottleneck. I'll get on that right now."
      5. A couple hours later, after manipulating something in the
      application (had nothing to do with Oracle or SQL), the network of
      overnight jobs could finish several hours earlier than before.

YMMV of course, but it was a huge feel-good story for everyone involved.
It uses a technology (tracing) that's distributed at no extra cost with
every edition of Oracle. It does require good tools to make use of it.
Making those tools is what my team does for a living.


Cary Millsap
Method R Corporation

NEW! Author of *Faster: How to Optimize a System
<https://method-r.com/2021/12/23/faster/>*



On Sun, Aug 21, 2022 at 11:01 PM Jon Crisler <joncrisler@xxxxxxxxx> wrote:

We use both products for a very large Oltp app .  I would not encourage
removing OEM in favor of dynatrace as they come from opposite sides of the
problem.  Dynatrace is a bit more focused on the app side , and does not
have as robust amount of features as OEM .   Dynatrace is also more
resource intensive than OEM - plan on about 2 full cpu just for the
dynatrace agents on the host , while OEM maybe .25 to .75 cpu .  You need a
small to medium db server and a small app server for OEM while dynatrace
needs about 4 cpu for just the app server .   The project uses at least
2000 cpu on 2-4 node RAC configs .

That said - dynatrace and OEM agents live happily together on the same
server , and the licensing is actually cheaper for OEM .  We had this same
issue picking Dynatrace or OEM - DBA’s will not be happy with just
dynatrace , so we use both .   Also for anybody considering Dynatrace ,
also look at New Relic : all the projects I have worked on have had 100%
positive feedback on New Relic .  We consider them equally good products .
  Also - you will probably retain the Diag and Perf packs for Oracle , in
which case turns OEM into a very low cost monitoring tool compared to
Dynatrace .

Long story short - do not pick one over the other - use both !!

Sent from my Atari 2600

On Aug 21, 2022, at 1:37 PM, Pap <oracle.developer35@xxxxxxxxx> wrote:


I have not used dynatrace extensively though but seen dynatrace used
mainly monitoring aspect across many other app tools but not just
databases. And as per my understanding the dynatrace agent has to be
installed in the respective hosts which you are going to monitor.I have
seen long running sqls list and their execution count and the services they
are coming from, but not seens anytime attaching profile/baselines through
this tool which you may be using to do it through OEM. Also I have not seen
the IO trends(big read vs small read response etc) for the storage cells
for exadata machines in dynatrace. Others may comment.

There are many comparisons available between these two on the internet if
you google it, But yes , you may need to be aware of all the CONS of the
dynatrace before moving away from OEM.

On Sat, Aug 20, 2022 at 4:17 PM Lok P <loknath.73@xxxxxxxxx> wrote:

Hello , We are managing a third party database(mostly performance font)
and we are currently using OEM for debugging and monitoring Oracle database
wait events , sql plan , sql monitor , object statistics, Database host IO
CPU, Memory etc, exadata storage cell level stats like , Cell IO/CPU/Memory
trends also we have configured multiple alerts in OEM.

We are getting push from the team, if the same work can be done through
dynatrace tool without access to OEM. So I want to understand from experts
here if anybody has used a dynatrace tool for database monitoring and
analysis work, and how is the experience? And does the dynatrace agent have
to be installed in all the DB nodes and Storage cell nodes too?


https://www.dynatrace.com/news/blog/intelligent-observability-for-oracle-and-sql-databases/
<https://www.dynatrace.com/news/blog/intelligent-observability-for-oracle-and-sql-databases/>*

Regards

Lok


Other related posts: