Example #1
0
 public SmartMonitor()
 {
     MetricDefinitionService = new MetricDefinitionService();
     ResourceService         = new ResourceService();
     this.components         = new System.ComponentModel.Container();
     InitializeComponent();
     this.components.SetStyle(this);
     this.components.SetDefaultTheme(this, MetroThemeStyle.Light);
 }
Example #2
0
        private void LoadVirtualMachineTab()
        {
            //UI
            vmMetricsList.BeginUpdate();
            ColumnHeader header = new ColumnHeader();

            header.Text = "";
            header.Name = "smartmonitor";
            vmMetricsList.Columns.Add(header);
            vmMetricsList.Items.Clear();
            vmMetricsList.FullRowSelect = true;
            vmMetricsList.Alignment     = ListViewAlignment.Left;
            vmMetricsList.MultiSelect   = true;
            vmMetricsList.Scrollable    = true;
            vmMetricsList.View          = View.Details;
            vmMetricsList.HeaderStyle   = ColumnHeaderStyle.None;
            vmMetricsList.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);

            //List vms
            var vms = ResourceService.GetResourcesByType("Microsoft.Compute/virtualMachines");

            foreach (var vm in vms)
            {
                vmChooser.Items.Add(vm.name);
            }

            //List metric definitions
            var resourceId =
                "/subscriptions/a329319b-9a69-4749-9a2a-c70db554f0a1/resourceGroups/SmartMonitorVM/providers/Microsoft.Compute/virtualMachines/VirtualMachineSM";
            var metricDefinitions = MetricDefinitionService.GetMetricDefinitions(resourceId);

            foreach (var metricDef in metricDefinitions)
            {
                var item = new ListViewItem(metricDef.name.localizedValue);
                item.Tag = metricDef.name.value;
                vmMetricsList.Items.Add(item);
            }
            vmMetricsList.EndUpdate();
        }
Example #3
0
        private void LoadStorageAccountsTab()
        {
            //UI
            storageMetricsList.BeginUpdate();
            ColumnHeader header = new ColumnHeader();

            header.Text = "";
            header.Name = "smartmonitor";
            storageMetricsList.Columns.Add(header);
            storageMetricsList.Items.Clear();
            storageMetricsList.FullRowSelect = true;
            storageMetricsList.Alignment     = ListViewAlignment.Left;
            storageMetricsList.MultiSelect   = true;
            storageMetricsList.Scrollable    = true;
            storageMetricsList.View          = View.Details;
            storageMetricsList.HeaderStyle   = ColumnHeaderStyle.None;
            storageMetricsList.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);

            //List storage accounts
            var storageAccounts = ResourceService.GetResourcesByType("Microsoft.Storage/storageAccounts");

            foreach (var sa in storageAccounts)
            {
                storageAccountChooser.Items.Add(sa.name);
            }

            //List metric definitions
            var resourceIdApp     = "/subscriptions/a329319b-9a69-4749-9a2a-c70db554f0a1/resourceGroups/smartmonitorSA/providers/Microsoft.Storage/storageAccounts/smstorage1";
            var metricDefinitions = MetricDefinitionService.GetMetricDefinitions(resourceIdApp);

            foreach (var metricDef in metricDefinitions)
            {
                var item = new ListViewItem(metricDef.name.localizedValue);
                item.Tag = metricDef.name.value;
                storageMetricsList.Items.Add(item);
            }
            storageMetricsList.EndUpdate();
        }
Example #4
0
        private void LoadWebsiteTab()
        {
            //UI
            webMetricsList.BeginUpdate();
            ColumnHeader header = new ColumnHeader();

            header.Text = "";
            header.Name = "smartmonitor";
            webMetricsList.Columns.Add(header);
            webMetricsList.Items.Clear();
            webMetricsList.FullRowSelect = true;
            webMetricsList.Alignment     = ListViewAlignment.Left;
            webMetricsList.MultiSelect   = true;
            webMetricsList.Scrollable    = true;
            webMetricsList.View          = View.Details;
            webMetricsList.HeaderStyle   = ColumnHeaderStyle.None;
            webMetricsList.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);

            //List websites
            var websites = ResourceService.GetResourcesByType("Microsoft.Web/sites");

            foreach (var web in websites)
            {
                websiteChooser.Items.Add(web.name);
            }

            //List metric definitions
            var resourceIdApp     = "/subscriptions/a329319b-9a69-4749-9a2a-c70db554f0a1/resourceGroups/smartMonitorDemoApp/providers/Microsoft.Web/sites/smartMonitorDemoApp";
            var metricDefinitions = MetricDefinitionService.GetMetricDefinitions(resourceIdApp);

            foreach (var metricDef in metricDefinitions)
            {
                var item = new ListViewItem(metricDef.name.localizedValue);
                item.Tag = metricDef.name.value;
                webMetricsList.Items.Add(item);
            }
            webMetricsList.EndUpdate();
        }