Exemple #1
0
        //Remote access
        private static async Task <string> checkRemote(decimal iteration)
        {
            try
            {
                ConnectionOptions options = new ConnectionOptions();
                options.Username         = "******";
                options.Password         = "******";
                options.EnablePrivileges = true;
                options.Impersonation    = ImpersonationLevel.Impersonate;
                options.Authentication   = AuthenticationLevel.PacketPrivacy;
                options.EnablePrivileges = true;
                Console.WriteLine("Status iteration [" + Convert.ToString(iteration) + "] started at: " + DateTime.Now.ToString());
                //skapar queryn (i det här fallet till själva operativsystemet)
                var machine = @"\\10.1.10.184";
                var path    = @"\root\cimv2";
                var osQuery = new SelectQuery("Win32_OperatingSystem");
                //Skapar scopet (alltså vilket system som vi vill ansluta till, 10.1.10.140 är ett lokalt ip)
                var mgmtScope = new ManagementScope(machine + path, options);

                //Ansluter till WMI:n
                mgmtScope.Connect();

                //skapar en 'sökare' för queryn
                var    mgmtSrchr           = new ManagementObjectSearcher(mgmtScope, osQuery);
                string osStatus            = "empty";
                string osNumberOfProcesses = "empty";
                string osCap         = "empty";
                string datetimenow   = DateTime.Now.ToString();
                string osFreeMemory  = "empty";
                string osTotalMemory = "empty";

                foreach (var os in mgmtSrchr.Get())
                {
                    osCap               = os.GetPropertyValue("Caption").ToString();
                    osStatus            = os.GetPropertyValue("Status").ToString();
                    osNumberOfProcesses = os.GetPropertyValue("NumberOfProcesses").ToString();

                    osFreeMemory  = os.GetPropertyValue("FreePhysicalMemory").ToString();
                    osTotalMemory = os.GetPropertyValue("TotalVisibleMemorySize").ToString();
                }
                var serverStatus = new JsonStatusObject();
                serverStatus.nop         = osNumberOfProcesses;
                serverStatus.status      = osStatus;
                serverStatus.caption     = osCap;
                serverStatus.datetime    = datetimenow;
                serverStatus.freememory  = osFreeMemory;
                serverStatus.totalmemory = osTotalMemory;

                string json = JsonConvert.SerializeObject(serverStatus);
                Console.WriteLine();
                Console.WriteLine("Uploading Json:");
                Console.WriteLine(json);
                Console.WriteLine("_______________________________________________________");
                Console.WriteLine();
                Console.WriteLine();
                PostJson(json);
                return(null);
                //url till vår json
                //"https://api.myjson.com/bins/n6d95"
            }
            catch (Exception e)
            {
                Debug.WriteLine(e.Message);
                return(null);
            }
        }
Exemple #2
0
        private static async Task <string> checkLocal(decimal iteration)
        {
            //skapar queryn (i det här fallet till själva operativsystemet)
            var osQuery = new SelectQuery("Win32_OperatingSystem");
            //Skapar scopet (alltså vilket system som vi vill ansluta till)
            var machine   = @"\\localhost";
            var path      = @"\root\cimv2";
            var mgmtScope = new ManagementScope(machine + path);

            //Ansluter till WMI:n
            mgmtScope.Connect();
            Console.WriteLine("Status iteration [" + Convert.ToString(iteration) + "] started at: " + DateTime.Now.ToString() + " for machine: " + machine);

            //skapar en 'sökare' för queryn
            var    mgmtSrchr           = new ManagementObjectSearcher(mgmtScope, osQuery);
            string osStatus            = "empty";
            string osNumberOfProcesses = "empty";
            string osCap         = "empty";
            string datetimenow   = DateTime.Now.ToString();
            string osFreeMemory  = "empty";
            string osTotalMemory = "empty";

            foreach (var os in mgmtSrchr.Get())
            {
                osCap               = os.GetPropertyValue("Caption").ToString();
                osStatus            = os.GetPropertyValue("Status").ToString();
                osNumberOfProcesses = os.GetPropertyValue("NumberOfProcesses").ToString();
                osFreeMemory        = os.GetPropertyValue("FreePhysicalMemory").ToString();
                osTotalMemory       = os.GetPropertyValue("TotalVisibleMemorySize").ToString();
                if (!string.IsNullOrEmpty(osCap))
                {
                    Console.WriteLine("Operating System caption: " + osCap);
                }
                if (!string.IsNullOrEmpty(osStatus))
                {
                    Console.WriteLine("Status: " + osStatus);
                }
                if (!string.IsNullOrEmpty(osNumberOfProcesses))
                {
                    Console.WriteLine("Number of processes running: " + osNumberOfProcesses);
                }
            }
            var serverStatus = new JsonStatusObject();

            serverStatus.nop         = osNumberOfProcesses;
            serverStatus.status      = osStatus;
            serverStatus.caption     = osCap;
            serverStatus.datetime    = datetimenow;
            serverStatus.freememory  = (Convert.ToInt32(osFreeMemory) / 1000).ToString();
            serverStatus.totalmemory = (Convert.ToInt32(osTotalMemory) / 1000).ToString();
            string json = JsonConvert.SerializeObject(serverStatus);

            Console.WriteLine();
            Console.WriteLine("Uploading Json:");
            Console.WriteLine(json);
            Console.WriteLine("_______________________________________________________");
            Console.WriteLine();
            Console.WriteLine();
            PostJson(json);
            return(null);
            //url till vår json
            //"https://api.myjson.com/bins/n6d95"
        }