I've written about the Service Builder before, but I wanted to step back and go through the steps to create a "simple" service definition. This one will simply have some Oracle instances and some hosts (eg. App server, web server, etc.)
We start with the Service Builder dashboard. We're going to add a category, give it a name and description and optionally assign a domain on the following page.
Next we'll add components to the service. I normally add a "dynamic" component (next step) so I will simply pick the first option in the list:
We'll create a rule to dynamically add components to the service:
Starting with the Oracle instance, we give it a name, navigate the tree to find Databases -> Oracle, then put in our query. Every object has a property of "name" and I'm using SQL-like syntax to find instances that have PROD in their name.
We can click Test to make sure we're getting appropriate results, then Create to finalize the definition.
Since we also want to include the App server hosts, simply repeat the process of adding components, giving it a name, navigating the tree to Infrastructure -> Hosts, and using the same query syntax as before.
Now we've got a service named "Oracle Apps" that has components to include the instances and hosts. Both were dynamic queries, so if a new instance with "PROD" in the name gets added, it will automatically populate the service.
Finally we're going to use the service definition in a dashboard. I'll start with the Service Operations Console. We'll select the services to monitor, and find "Oracle Apps" in the list.
You can pick multiple services as you see fit. Once applied, you'll have a view of the service with all of the alarms on the service, the components, etc.