public async Task<EventHubDescription> CreateEventHubAsync() { string serviceBusNamespace = "iotmc-ns"; string serviceBusManageKey = "<< Add your SAS here >>"; string eventHubName = "IoTMC"; string eventHubSASKeyName = "Device01"; Uri serviceBusUri = ServiceBusEnvironment.CreateServiceUri("sb", serviceBusNamespace, string.Empty); TokenProvider tokenProvider = TokenProvider.CreateSharedAccessSignatureTokenProvider("RootManageSharedAccessKey", serviceBusManageKey); NamespaceManager nameSpaceManager = new NamespaceManager(string.Format("//{0}/", serviceBusUri.Host), tokenProvider); string eventHubKey = SharedAccessAuthorizationRule.GenerateRandomKey(); EventHubDescription eventHubDescription = new EventHubDescription(eventHubName) { PartitionCount = 8, MessageRetentionInDays = 1 }; SharedAccessAuthorizationRule eventHubSendRule = new SharedAccessAuthorizationRule(eventHubSASKeyName, eventHubKey, new[] { AccessRights.Send, AccessRights.Listen }); eventHubDescription.Authorization.Add(eventHubSendRule); eventHubDescription = await nameSpaceManager.CreateEventHubIfNotExistsAsync(eventHubDescription); string eventHubSASKey = ((SharedAccessAuthorizationRule)eventHubDescription.Authorization.First()).PrimaryKey; return eventHubDescription; }
public async Task <EventHubDescription> CreateEventHubAsync() { string serviceBusNamespace = "iotmc-ns"; string serviceBusManageKey = "<< Add your SAS here >>"; string eventHubName = "IoTMC"; string eventHubSASKeyName = "Device01"; Uri serviceBusUri = ServiceBusEnvironment.CreateServiceUri("sb", serviceBusNamespace, string.Empty); TokenProvider tokenProvider = TokenProvider.CreateSharedAccessSignatureTokenProvider("RootManageSharedAccessKey", serviceBusManageKey); NamespaceManager nameSpaceManager = new NamespaceManager(string.Format("//{0}/", serviceBusUri.Host), tokenProvider); string eventHubKey = SharedAccessAuthorizationRule.GenerateRandomKey(); EventHubDescription eventHubDescription = new EventHubDescription(eventHubName) { PartitionCount = 8, MessageRetentionInDays = 1 }; SharedAccessAuthorizationRule eventHubSendRule = new SharedAccessAuthorizationRule(eventHubSASKeyName, eventHubKey, new[] { AccessRights.Send, AccessRights.Listen }); eventHubDescription.Authorization.Add(eventHubSendRule); eventHubDescription = await nameSpaceManager.CreateEventHubIfNotExistsAsync(eventHubDescription); string eventHubSASKey = ((SharedAccessAuthorizationRule)eventHubDescription.Authorization.First()).PrimaryKey; return(eventHubDescription); }
/// <summary> /// Creates an event hub in given service bus namespace /// </summary> /// <param name="eventHubConnectionString">Connection string to access the service bus namespace</param> /// <param name="eventHubName">Name of event hub to be created</param> /// <param name="partitionCount">Number of partitions in event hub</param> public static void CreateEventHubIfNotExists(string eventHubConnectionString, string eventHubName, int partitionCount = 0) { NamespaceManager namespaceManager = NamespaceManager.CreateFromConnectionString(eventHubConnectionString); var eventHubDescription = new EventHubDescription(eventHubName); if (partitionCount > 0) { eventHubDescription.PartitionCount = partitionCount; } RetryPolicy.ExecuteAsync(() => namespaceManager.CreateEventHubIfNotExistsAsync(eventHubDescription)).Wait(); }
public static void CreateEventHub(string eventHubName, int numberOfPartitions, NamespaceManager manager) { try { // Create the Event Hub Console.WriteLine("Creating Event Hub..."); EventHubDescription ehd = new EventHubDescription(eventHubName); ehd.PartitionCount = numberOfPartitions; manager.CreateEventHubIfNotExistsAsync(ehd).Wait(); } catch (AggregateException agexp) { Console.WriteLine(agexp.Flatten()); } }
public static void CreateEventHubIfNotExists(string eventHubName, int numberOfPartitions, NamespaceManager manager) { try { // Create the Event Hub Trace.WriteLine("Creating Event Hub..."); EventHubDescription ehd = new EventHubDescription(eventHubName); ehd.PartitionCount = numberOfPartitions; manager.CreateEventHubIfNotExistsAsync(ehd).Wait(); } catch (AggregateException agexp) { Trace.WriteLine(agexp.Flatten()); } }
public static void CreateEventHubAndConsumerGroup() { try { NamespaceManager manager = NamespaceManager.CreateFromConnectionString(GetServiceBusConnectionString()); // Create the Event Hub Console.WriteLine("Creating Event Hub..."); EventHubDescription ehd = new EventHubDescription(eventHubName); //ehd.PartitionCount = numberOfPartitions; manager.CreateEventHubIfNotExistsAsync(ehd.Path).Wait(); manager.CreateConsumerGroupIfNotExistsAsync(ehd.Path, consumerGroupName).Wait(); } catch (AggregateException agexp) { Console.WriteLine(agexp.Flatten()); } }
/// <summary> /// Deploys the event hub that sends messages to stream analytics, and then eventually to PowerBI. /// </summary> /// <returns></returns> private static async Task DeployEventHub(TextWriter writer, bool recreate = false) { writer.WriteLine("deploying event hub"); var servicebusConnString = NearbyConfig.Settings["dumpling-service eventhub connection string"]; var eventhubPath = NearbyConfig.Settings["dumpling-service eventhub path"]; NamespaceManager manager = NamespaceManager.CreateFromConnectionString(servicebusConnString); var exists = await manager.EventHubExistsAsync(eventhubPath); if (exists && recreate) { writer.WriteLine("event hub exists and we want to recreate it; deleting current instance."); } await manager.CreateEventHubIfNotExistsAsync(eventhubPath); writer.WriteLine($"event hub '{eventhubPath}' created or existed already."); }
public async Task <EventHubDescription> CreateEventHubByConnectionStringAsync() { string eventHubName = "IoTMC"; string eventHubSASKeyName = "Device01"; string serviceBusConnectionString = "Endpoint=sb://iotmc-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=<<Add your SAS here>>"; NamespaceManager nameSpaceManager = NamespaceManager.CreateFromConnectionString(serviceBusConnectionString); string eventHubKey = SharedAccessAuthorizationRule.GenerateRandomKey(); EventHubDescription eventHubDescription = new EventHubDescription(eventHubName) { PartitionCount = 8, MessageRetentionInDays = 1 }; SharedAccessAuthorizationRule eventHubSendRule = new SharedAccessAuthorizationRule(eventHubSASKeyName, eventHubKey, new[] { AccessRights.Send, AccessRights.Listen }); eventHubDescription.Authorization.Add(eventHubSendRule); eventHubDescription = await nameSpaceManager.CreateEventHubIfNotExistsAsync(eventHubDescription); string eventHubSASKey = ((SharedAccessAuthorizationRule)eventHubDescription.Authorization.First()).PrimaryKey; return(eventHubDescription); }