vinodh muthusamy Ответов: 1

Для мониторинга мониторинга клиентских системных файлов


When 3 clients are connected wtih server. I want to monitor file, after threshold has been setup.

ForExample:
 Threshold is 50% has been set.
Iam monitoring folder name as C:\Newfolder. 
Total Size of NewFolder is 500MB.
When Newfolder reaches 250MB, I want to send notification to IT Team.

How it can be achieved. This is new to me.

I have done this sample in windows service. but we cannot install windows service in N number of client system.


Что я уже пробовал:

public void FolderMonitorTimer()
       {
           timer.Elapsed += new ElapsedEventHandler(OnElapsedTime);
           timer.Interval = 5000;
           timer.Enabled = true;
       }

<pre>// Get current system File monitor

static long DirectorySize12(DirectoryInfo dInfo, bool includeSubDir)
      {
          // Enumerate all the files
          long totalSize = dInfo.EnumerateFiles()
                       .Sum(file => file.Length);

          // If Subdirectories are to be included
          if (includeSubDir)
          {
              // Enumerate all sub-directories
              totalSize += dInfo.EnumerateDirectories()
                       .Sum(dir => DirectorySize12(dir, true));
          }
          return totalSize;
      }


private void OnElapsedTime(object source, ElapsedEventArgs e)
     {
         DirectoryInfo dInfo = new DirectoryInfo(FolderPath);

         long sizeOfDir = DirectorySize12(dInfo, true);


         usedSizeMB = ((double)sizeOfDir) / (1024 * 1024);
         availSizeMB = strDiskDefaultSize - usedSizeMB;
         availPercent = availSizeMB / strDiskDefaultSize * 100;
         UsedPercent = usedSizeMB / strDiskDefaultSize * 100;
         timer.Interval = 1000;
         WarningThreshold= 50;

         if ((Convert.ToInt32(UsedPercent) > Convert.ToInt32(WarningThreshold)))
         {
             //Send notification to IT Team

         }

Tomas Takac

Зачем вам нужно следить за чем-то на компьютере клиента из веб-приложения? Звучит подозрительно.

vinodh muthusamy

Из IT-команды они установят пороговое значение для мониторинга некоторого заданного пути.

Так что если какая-либо клиентская система достигнет этого конкретного порогового значения. Мы отправим уведомление ИТ-команде, чтобы очистить или удалить некоторые нежелательные данные.

Эти процессы будут запускать фоновый процесс.

[no name]

"мы не можем установить службу windows", почему бы и нет? Это почти единственный способ сделать это. Если вам нужно сделать это законно, то есть.

vinodh muthusamy

можете ли вы кратко изложить свое предложение

[no name]

Нет, я ничего не могу" кратко " изложить. Воспользуйтесь услугой, и вы уже знаете это. Вы не собираетесь ничего отслеживать из интернета.

vinodh muthusamy

я сказал кратко изложить ваши замечания, которые вы сказали, которые не могли быть поняты.

Если мы 1000 клиентов машины, будем ли мы идти и установить наше приложение в каждой системе. Если это так, то это не правильное решение для этого.

1 Ответов

Рейтинг:
1

Maciej Los

Как NotPoliticallyCorrect[^] упомянутый, "You are not going to monitor anything from the web."
Есть только один способ добиться этого: установить службу Windows на клиентские компьютеры.
С другой стороны, в сети доступно множество сценариев, которые можно запустить для сканирования клиентских компьютеров (с точки зрения ИТ-команды), чтобы узнать, сколько места C:\NewFolder занятый.


vinodh muthusamy

да, это был мой вопрос. Есть ли какой-нибудь альтернативный способ сделать это? пожалуйста, предоставьте мне какое-нибудь решение и ссылки на Скрипты