| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			D365FO - Как определить, что потребляет наибольшее количество CPU и / или памяти внутри Microsoft Dynamics 365 для Operations - Batch Management Service?
			 
			
			Всем - привет! 
		
		
		
		
		
		
		
	Могли бы вы посоветовать, как определить, что потребляет наибольшее количество CPU и / или памяти внутри Microsoft Dynamics 365 для Operations - Batch Management Service? Основываясь на описании, ета служба опрашивает и выполняет пакетные запросы операций (Operations batch requests.). Но как определить какие процессы и в каком количестве осуществляют загрузку процессора / памяти внутри Microsoft Dynamics 365 для Operations - Batch Management Service? ![]() Окружение: облачная среда с областью 1611 Update 7: общедоступный сервер AOS, частный сервер AOS и сервер BI.  | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: mazzy (2). | |
| 
			
			 | 
		#2 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Открыла System administration > Inquiries > Batch jobs > Batch job, но для всех batch job'ов для всех legal entities статус выполнения либо Withhold, либо Ended. Статуса Executing нет ни у какой работы.
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 MCT 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Можно еще увеличить интервалы работы заданий. Допустим не каждые две минуты, а полчаса или час.
		 
		
		
		
		
		
		
			
				__________________ 
		
		
		
		
	Axapta book for developer  | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: MarinaAX (1). | |
| 
			
			 | 
		#4 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			А что со старым  добрыйм трейс парсером?
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: MarinaAX (1). | |
| 
			
			 | 
		#5 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Мне нравится PerfView - только его надо изучать  
		
		
		
		
		
		
		
	 
		 | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: MarinaAX (1). | |
| 
			
			 | 
		#6 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Интересно, а в 2009/2012 версии его можно использовать, чтобы понять сколько памяти / проца съела пользовательская / пакетная сессия ? 
		
		
		
		
		
		
		
	P.S. А то народ велосипеды изобретал. По загрузке проца : 3.0 - Мониторинг работы https://blogs.msdn.microsoft.com/aer...006/12/25/124/ 2009 - Мониторинг работы  | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: MarinaAX (1). | |
| 
			
			 | 
		#7 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Большое спасибо за ваши рекомендации: 
		
		
		
		
		
		
		
		
			Вот выдержка из журнала Process Monitor'а: постоянно повторяется 00:56.8 Batch.exe 5672 RegQueryKey HKLM SUCCESS Query: HandleTags, HandleTags: 0x0 00:56.8 Batch.exe 5672 RegOpenKey HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib SUCCESS Desired Access: Read 00:56.8 Batch.exe 5672 RegCloseKey HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib SUCCESS 00:56.8 Batch.exe 5672 RegQueryKey HKLM SUCCESS Query: HandleTags, HandleTags: 0x0 00:56.8 Batch.exe 5672 RegOpenKey HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib SUCCESS Desired Access: Read 00:56.8 Batch.exe 5672 RegCloseKey HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib SUCCESS 00:56.8 Batch.exe 5672 RegQueryValue HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\Disable Performance Counters NAME NOT FOUND Length: 20 00:56.8 Batch.exe 5672 Process Profiling SUCCESS User Time: 810507.4843750 seconds, Kernel Time: 34.3750000 seconds, Private Bytes: 910,376,960, Working Set: 1,083,416,576 ![]() Может быть кто-то включил performance counter'ы и не выключил? А можно их как-то выключить? Последний раз редактировалось MarinaAX; 03.09.2017 в 08:56.  | 
| 
	
 | 
| 
			
			 | 
		#8 | 
| 
			
			 Участник 
		
			
	 | 
	
	|
| 
	
 | 
|
| За это сообщение автора поблагодарили: MarinaAX (1). | |
| 
			
			 | 
		#9 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Прошу прощения за то, что повторяюсь  
		
		
		
		
		
		
		
	  Так стоит мне что-либо делать с performance counter'ами или нет?
		 | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: mazzy (2). | |
| 
			
			 | 
		#10 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			VM с D365FO - находится в cloud-hosted окружениию Вот как выглядят работающие Performance Counters: 
		
		
		
		
		
		
		
	![]() Можно ли их остановить, хотя бы ненадолго?  | 
| 
	
 | 
| 
			
			 | 
		#11 | 
| 
			
			 Moderator 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Мне кажется, вы копаете в неправильную сторону. Внутри DAX (по крайней мере - внутри DAX2009 или DAX2012), есть нить, которая регулярно просыпается, проверяет флажки трассировки в регистре, потом засыпает (если флажек не изменился) или запускает/останавливает флажки трассировки уже в памяти самого процесса (если флажек изменился). 
		
		
		
		
		
		
		
	То есть - это в целом нормальный процессс, который не должен убивать производительность. Я конечно в D365 в эту сторону не копал, но все равно - велика вероятность что вы смотрите в неправильном направлении.  | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: MarinaAX (1). | |
| 
			
			 | 
		#12 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			предположим. 
		
		
		
		
		
		
			
		
		
		
		
	а куда автору копать то? давайте напомню всем участникам вопрос сразу скажу - лично я ответ не знаю. и мне тоже было бы интересно узнать ответ.  | 
| 
	
 | 
| 
			
			 | 
		#13 | 
| 
			
			 Moderator 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Ну я лично начал бы с trace parser, а потом двинулся бы в сторону предложенной Belugin perfview. (Кстати - я читал как запускать трассировку в Production Instance, но как-то пока не осознал как это делать в One Box...)
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: mazzy (2), MarinaAX (1). | |
| 
			
			 | 
		#14 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			1) Скачайте PerfView с сайта MS  
		
		
		
			2) Запустите PerfView (см также https://channel9.msdn.com/Series/PerfView-Tutorial) 3) File \ Set Symbol Path, Use MS Symbol server 4) Collect \ Collect 5) Circullar MB = 20000 6) Advanced \ No V.3 Symbols Дальше запускаете процесс который вызывает использование CPU, если он работает, то просто жмете Start collection и ждете минуты 2. Дальше Stop collection Подождать пока закончит обработку трейса можо открывать, выбирать batch.exe и анализировать top down или bottom up (там надо еще группировку настроить под интересную задачу) Например я сделал такую mpengine!{%}->mpe.$1;!=>Other Так как у меня процессор жрал Defender (это значит, что сгруппировать все функции mpengine и токи входа во все остальное в группу Other ) на картинке видно, что ~20% процессора выедает движок регулярных выражений Можно сделать mpengine!{%}->mpe.$1;!->Other - тогда "прочее" будет сгруппировано в один пункт и его можно размазать по тому, кто его потребляет (Правая кнопка и Fold \ Fold item) на картинке видно, что немного увеличился процент regex за счет того что в него вошло "прочее" которое из него вызывалось Последний раз редактировалось belugin; 04.09.2017 в 10:34.  | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: mazzy (2), Ace of Database (3), MarinaAX (1). | |
| 
			
			 | 
		#15 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Трейсу с TraceParser'а взяла ещё в пятницу вечером, но пока посмотреть её негде, потому как нет разрешения от администратора SQL. 
		
		
		
		
		
		
		
		
			Кстати, вопрос: может кто подскажет, как смотреть её локально? PerfView - тоже пробовала, но ничего не увидела. Попробую ещё... Есть такая распечатка с Performance Monitor'а - жду разрешения на временную остановку двух пользовательских Data Collection Sets ![]() И, да! Сообщу, что было не так, когда починим  
		Последний раз редактировалось MarinaAX; 04.09.2017 в 23:50.  | 
| 
	
 | 
| 
			
			 | 
		#16 | 
| 
			
			 NavAx 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Parser-у нужна база данных. Где она будет располагаться, все равно. Т.е. локально можно развернуть, при условии что у вас есть доступный SQL сервер, на котором есть права на создание новых баз.
		 
		
		
		
		
		
		
			
				__________________ 
		
		
		
		
	Isn't it nice when things just work?  | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: MarinaAX (1). | |
| 
			
			 | 
		#17 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Почитали бы ссылку что я вам дал. Там же есть продолжение https://docs.microsoft.com/en-us/dyn...t/trace-parser 
		
		
		
		
		
		
		
	Почему нельзя использовать базу данных что уже есть на VM ?  | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: MarinaAX (1). | |
| 
			
			 | 
		#18 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Всем - большое спасибо за помощь и рекомендации!!! 
		
		
		
		
		
		
		
	Перезагрузка сервера устранила проблему с высоким CPU, однако появилась 2 новых проблемы: 
  | 
| 
	
 | 
| Теги | 
| batch management service, dynamics 365 for operations | 
| 
	
	 | 
	
		
  |