Lab128 and Oracle Enterprose Manager (OEM)
First we should clarify what OEM (also known as EM) is. OEM has been morphing over time from a collection of Windows applications to Java applications and now into an all-HTML-based web application. These days, OEM is represented by two flavors: Database Control and Grid/Cloud Control (GC). Both have very similar user interfaces (UI) and both use the agents referred to as Oracle Management Agents (OMA). The agents run as autonomous proxy processes on a managed node and perform execution and monitoring tasks for OEM, communicating using the Hypertext Transfer Protocol (HTTP or HTTPS). In some cases, Database Control is installed by default, having all components running on the same node where Oracle server in installed. Unlike Database Control, Grid/Cloud Control is a centralized solution; it needs other two components - Oracle Management Server (OMS) and Oracle Management Repository (OMR). The Management Server is based on Oracle Application Server technology. The OMS pulls information from the Agents and aggregates the collections into the Repository. The OMS also acts as the UI by generating web-pages for database administrators to view the status of systems and services. The Management Repository is an Oracle Database Enterprise Edition (EE), which can optionally be setup as a RAC. This GC setup sounds like overkill if you have only few databases. From user feedback, it seems that most GC installations occur when the number of managed instances/databases exceeds 5-10.
A major portion of GC is free, including Oracle Application Server, Oracle database EE (when both used specifically for OEM), and the Agent functionality used to administer and manage Oracle Database, clusterware, OS-level monitoring, and so on. Moreover, Oracle Corporation currently publishes OMA API, making possible the development of the OMA plug-ins for non-Oracle software. This entire framework can be used for free for a corporate-level IT monitoring project.
Starting with Oracle 10g, Oracle Corporation provides 14 additional plug-ins (packs) to OMA which are not free and require separate licensing. By default, upon installation, the OMA enables several packs (Diagnostics, Performance & Tuning, Change Management, and Configuration Management) without any regard a customer's licenses. In 11g R2, this has been changed; the database administrator needs to enable this premium functionality explicitly by setting the initialization parameter CONTROL_MANAGEMENT_PACK_ACCESS.
Also see discussion how Lab128 compares with Oracle Cloud Control.
When trying to compare OEM to other products, one should be aware of the free and premium components of OEM. So, how does Lab128 compare to Oracle Enterprise Manager? Speaking about Grid/Cloud Control's free framework and Agent's free functionality, they nicely complement each other. Despite the challenges of setting up GC and keeping it up-to-date, we strongly recommend it. Once installed, it has good value for database administrators and has the scalability to handle dozens of databases. It has a sophisticated alert-propagation engine and it keeps track of installed software. GC is invaluable for managing RAC: it can handle ASM, clusterware, services, etc. And it's free. The OEM can detect and alert ongoing performance problems, but it does so at macro level. When it comes to finer levels of details, it shows a lack of functionality. This is, supposedly, where the premium packs should take over. Lab128 shines in this area - it is a performance troubleshooting tool. Once you learn that the instance is having a problem, you can switch to Lab128 and continue troubleshooting in this tool. In general, Lab128 competes with the Oracle Diagnostic and Tuning packs. It is difficult to compare it with the packs, because Lab128 pursues a very different philosophy in both the approach to troubleshooting and the user interface. Even in areas of similar functionality, you can monitor and explore performance data in the OEM premium packs, but doing the same in Lab128 is simpler, faster, and more informative, eventually saving you time and effort. There is also a large area of performance troubleshooting that is unique to Lab128 and not covered by OEM. (See also What makes Lab128 a unique tool?) Lab128 also has a more extensive implementation of ASH and AWR, providing a much higher resolution of recorded data. Try both tools and you will see the difference. If you don't like the limitations of the HTML interface in OEM, you will likely prefer Lab128. If you find OEM is still shallow and sloppy in collecting and presenting performance data, Lab128 is probably for you. Hey, did we mention OEM premium packs cost a bunch of green when compared to Lab128?