Editor's Note: Today's post comes from Microsoft Program Manager Mohamed Ahmed. This post provides an overview of the new user experience and features for Windows Azure Service Bus.

We are excited to announce that the Windows Azure Service Bus is now part of the new Windows Azure portal. In addition to existing features that enable you to manage Service Bus entities, we are introducing new portal features with the October 2012 release of the Service Bus.

The new features include:

  • Usage visualization of Service Bus queues topics and subscriptions,
  • Entity status updates, and,
  • Dashboards for monitoring queues and topics.

We revisited the overall portal experience and optimized it around the most common scenarios, enabling faster access to entity data and management operations.

Getting Started

Let’s start with the most common scenarios. We optimized the portal’s experience around scenarios that any new Service Bus user would go through; and creating new namespaces and entities is one of them.

Quick Create

The Quick Create experience is designed to help you create a new entity (queue, topic, or relay) in one easy step, even if you don’t have a pre-created service namespace. You provide a name for the entity (e.g. name of the queue), select the region and the Windows Azure subscription (in the case of multiple subscriptions) to be used, and the namespace under which this entity is created. If you don’t have an existing namespace, you are asked to provide a name for one. If you have a single pre-existing namespace, the entity is created under it. In the case of multiple namespaces, you can select one of them.

Your entity is ready to use once you get the “success” message at the bottom of the page. Your entity is created with the default parameters, such as the message’s time-to-live (TTL) value, as specified in the Service Bus official documentation.

Generally, Quick Create allows you to create top level entities: queues, topics, and relays. An important point to note: the relays Quick Create does not create an actual relay endpoint. It creates a service namespace for you as a container of this relay endpoint. You must still create relays programmatically using our APIs. You can read more about that here.

Custom Create

Custom Create is the more detailed version that gives you knobs to change the default values of the properties of the entity (queue or topic) being created. You can still select a pre-created namespace or create a new one using the custom create scenario. We don’t yet support updating the properties of messaging entities. So, once you create a queue or topic, you cannot change any of its properties. You can still change its status, which will be explained below.

Updating Entity Status

A new feature being introduced in the Windows Azure Service Bus is the ability to change the status of a messaging entity (queue, topic, or subscription) that enables the entity to send or receive messages. Now you can suspend a queue, topic, or a subscription. A sender cannot send messages to a suspended entity. Also, other applications and devices cannot receive messages from this entity. The new Windows Azure portal allows you to change the state of an entity to either Resume or Suspended.

Queue and Topic Dashboards

With the new portal, you get a comprehensive and timely view of the status your queues and topics. You can also monitor their usage. This is a major new feature we have introduced in the new Windows Azure portal. You can now see activities on queues, topics, subscriptions, or relays that you’ve created. You can view this information over multiple time windows: the last hour, the last 24 hours, 7 days, or the last 30 days. You can see data with a precision as low as 5-minute measurement points for the one hour window, 1 hour for the 24-hour window, and 1 day for the 7 and 30-day windows. For any queue, you can see charts of:

-        Incoming Messages: number of messages queued during this time interval.
-        Outgoing Messages: number of messages de-queued during this time interval.
-        Length: number of messages in the entity at the end of this time interval.
-        Size: storage space (in MB) being used by this entity at the end of this time interval.

 

Under “quick glance” on the dashboard, we reflect the current size of the queue as Queue Length amongst other pieces of information. This information is refreshed every 10 seconds. Another very useful piece of information is the View Connection String link. It provides the connection string to that entity’s namespace, which you can then use in your code to create a queue or topic client.

A topic dashboard is fairly identical, except for the usage metrics. Outgoing messages and length are not present in the topic dashboard, as that information would be different for each of the subscriptions for a topic. The Monitor tab enables you to add usage metrics (number of outgoing messages and length), per topic subscription. To add these metrics, click on add metrics at the bottom of the page, and then choose from the subscriptions under the topic.

What’s Next

Going forward, we will be enriching our story for better management, monitoring and diagnostics of Service Bus entities by adding more features. New features will include a namespace dashboard for aggregated views, a dashboard for subscriptions on every topic, additional metrics, the ability to update entity properties, and more. We are definitely interested in hearing from you what more should be done -- so please leave comments with suggestions!

What About the Current Silverlight-based Portal?

The current portal will continue to work side-by-side with the new portal. It is now in maintenance mode, so we won’t be adding any new features. However, any changes you make to your Service Bus entities will be reflected in both places.

Let us know what you think of our new portal. We will be more than glad to get your feedback for missing features and/or possible improvements.

Additional Resources