AX Performance Monitor 101 – Tips and tricks to deal with performance counter files [EN]

Windows Performance Monitor for Dynamics AX

 

In my previous blog post, I explained how to setup Performance Monitor (PerfMon) to proactively capture performance data while cleaning old files to keep disk space under control. This is, let’s say, our ideal scenario, but sometimes setup is not that specific and we need to deal with suboptimal files that contains the performance data we need to analyze:

  • We have too many files
  • We have too few files
  • We have some huge file that makes analysis or processing it too slow
  • We have files captured in different languages

Let’s have a brief description on how we can deal with some situations by introducing a couple of small but useful tools:

PAL – Performance Analysis of Logs

PAL is a small but really useful tool created by Clint Huffman that takes one perfmon counter file and creates a nice HTML report with graphs and descriptions that can be used as starting point for performance analysis. It’s not that the tool replaces a manual in-deep analysis of any potential problem, but it helps giving some tips that can be used to start looking for something else.

 

Read the full article at “Dynamics AX in the Field”, the blog from the Premier Field Engineering team at Microsoft.

 

AX Performance Monitor 101 – Setup Perfmon for continuous monitoring with rolling files [EN]

Windows Performance Monitor for Dynamics AX

 

Windows Performance Monitor (PerfMon) is likely the most useful tool (together with our DynamicsPerf package) to monitor and diagnose performance problems related with your Microsoft Dynamics AX infrastructure and, in general, for any software running on Windows operating systems. Given its importance, is surprising how many people is not using it properly or, even worst, is not using it at all.

I will briefly explain how to setup PerfMon to collect performance counters in all servers for continuous monitoring, creating log files per day, compressing and deleting old files to minimize disk space, along with some tips and tricks during the process:

Create and configure a Data Collector Set

  • First of all open Performance Monitor either going to Administrative Tools in Windows Control Panel or searching “perfmon” in the Start menu.
  • Navigate to Data Collector Sets > User Defined > Right Click > New > Data Collector Set.
  • Choose “Create from a template” and finish the wizard. Some nice templates for all Dynamics AX server roles can be obtained as part of our DynamicsPerf download, under “DynamicsPerf 2.00\DynamicsPerf\Windows Perfmon Scripts” subfolder or as part of the PAL tool. We will talk about PAL on the next post on this series.

 

Read the full article at “Dynamics AX in the Field”, the blog from the Premier Field Engineering team at Microsoft.

 

Why you should be using Team Foundation Server for Dynamics AX lifecycle management? [EN]

If you already use Team Foundation Server in your Dynamics AX projects, providing all benefits it can give to your teams, or if you are already convinced to use it soon, then this article is not for you.

You may not be convinced or, even worst, you may disagree about it to be beneficial to your methodologies and team behaviors. You can try to challenge my points with your project’s circumstances that make TFS unacceptable. That’s fine. I’m only asking you to read the full article first 🙂

Microsoft Application Lifecycle Management

Team Foundation Server (or Visual Studio Team Services*) is a tool, and as such, it will allow you to achieve the same tasks faster and with less effort. Furthermore, TFS will also give the ability to execute crucial tasks that are only available by using this kind of tools. Those tasks are mostly related to development work and source code management, what makes developer’s life easier, but some of them also help project managers and consultants, and support Quality Assurance guidance and validations, testing and all the rest of Application Lifecycle Management steps, whichever methodology is used to manage our projects: Microsoft SureStep, Agile, Scrum, …

Not to mention that using TFS is mandatory in the new Dynamics 365 for Operations, so including it in our lifecycle processes today will ease the transition and will put in place a set of Best Practices than will improve your team since day one.

Let’s have a look at the benefits of TFS in the three main categories of Application Lifecycle Management:

  1. Work
  2. Code
  3. Build & Release

 

Read the full article at “Dynamics AX in the Field”, the blog from the Premier Field Engineering team at Microsoft.

 

Cumulative Update 12 para Microsoft Dynamics AX 2012 R3

Microsoft Dynamics

Ya está disponible la siguiente actualización acumulativa para Microsoft Dynamics AX 2012 R3, la CU12 (6.3.5000.138). Esta actualización está disponible para instalación mediante el módulo Updates de Lifecycle Services, como viene siendo habitual desde la revisión R3. Información sobre las mejoras sobre el proceso de instalación se puede encontrar en los enlaces siguientes:

La documentación del parche:

Descarga:

Sin duda lo más llamativo de este parche es el nuevo módulo Cortana Intelligence que nos permite conectar con los Cognitive Services en Azure. Esta API nos va a permitir hacer uso de los servicios de machine learning de manera sencilla mediante algoritmos predefinidos y facilitando el mantenimiento de entidades de datos en cloud desde nuestra instancia local de AX 2012.

Aparte de la funcionalidad en sí, a la que vale la pena echar un vistazo, este nuevo módulo ilustra la filosofía híbrida de las próximas versiones de Dynamics AX, en las que parte de la funcionalidad se va a ofrecer de manera exclusiva en cloud (todo lo relacionado con Cortana Intelligence, por ejemplo, aunque no es el único) mientras seguimos utilizando nuestra versión de AX 2012 R3 on-premise.

 

Microsoft Dynamics 365 for Operations

dynamics-365-launch

Os traigo un resumen de todo lo que se ha anunciado durante las ultimas semanas acerca de los planes de Microsoft para unificar su plataforma de negocio bajo un mismo paraguas, tanto a nivel de marketing, como de arquitectura, como ya anunciaron hace varios meses.

He tardado un poco en poder escribir este artículo, y mientras tanto se han anunciado muchas otras cosas que están relacionadas con Dynamics 365, así que voy a hacer un resumen de todas ellas ya que vamos a hablar mucho de estos temas en los próximos meses y este es un buen punto de partida.

Al fin y al cabo, todo esto se ha ido anunciando durante las últimas semanas pero la disponibilidad general empieza hoy 1 de Noviembre 🙂

Microsoft Dynamics 365 for Operations

Por supuesto la noticia principal es el lanzamiento de la plataforma Dynamics 365 (que engloba AX, NAV y CRM) y en concreto de Microsoft Dynamics 365 for Operations que es el nombre final del producto que hemos llamado Rainier (nombre del proyecto), AX 7 (número de versión) y últimamente “el nuevo” Dynamics AX. No más nombres extraños, pero tampoco cambios en el producto de forma inmediata. Dynamics 365 for Operations es el nombre final de la versión actual de AX 7, de momento es el mismo producto, y desde aquí en adelante empieza la evolución que está por llegar.

La presentación oficial de Dynamics 365 tuvo lugar hace unas semanas durante el evento de la comunidad AXUG Summit, y queda resumido en el siguiente vídeo (y muchos más en el canal de Ignite en Youtube):

Continue Reading…

PowerShell y los comandos de inicio en Dynamics AX 2012 (PS-III)

En los primeros artículos de esta serie, aprendimos las bases de PowerShell en general, y cómo utilizar librerías de cmdlets extra, incluyendo las que vienen con Microsoft Dynamics AX 2012 y permiten muchas acciones que facilitan la administración y el mantenimiento. PowerShell - jaestevan.com

Pero para poder utilizar PowerShell en nuestros sistemas DevOps reales, debemos unirlo todo y utilizar tanto cmdlets específicos, como la potencia de PowerShell para poder ejecutar todos los pasos necesarios en un despliegue típico de AX, y en muchas otras tareas de mantenimiento.

Empecemos con PowerShell estándar

Por ejemplo podemos utilizar los comandos base de PowerShell para buscar si en el sistema existe un AOS con un determinado nombre, e iniciarlo si no lo está, de esta forma (probablemente no es la mejor forma, pero resulta ilustrativa para este caso):

powershell-aos-service

$AxAOSName = "MicrosoftDynamicsAX"

$svcAOS = Get-Service AOS60* | Where { $_.DisplayName.EndsWith($AxAOSName) } -ErrorAction SilentlyContinue
if (-not ($svcAOS.Length -gt 0))
{
    throw "AOS service " + $AxAOSName + " can not be found."
}

Write-Host "AOS:" $svcAOS.DisplayName

if ($svcAOS.Status -ne 'Running')
{
    Start-Service $svcAOS -PassThru
}

Continue Reading…