cl_server_info – Consumo de memoria SAP.

Para controlar un problema de desbordamiento de memoria que tenemos en un JOB hemos encontrado una clase que nos permite recuperar los procesos que corren en el sistema y ver cuanta memoria está consumiendo. Con esto podremos en el código limitar el uso de memoria de un proceso en concreto para evitar así DUMPs. Consumo memoria sap.

La transacción que hemos encontrado para ver el análisis de memoria individual es SM66:

Estoy ejecutando el proceso ZNXXXXXX parado en el Debug para ver las variables de memoria:

Consumo memoria sap
Consumo memoria sap

Nos vamos a la SM66 y buscamos por report y usuario:

Consumo memoria sap

Clickamos 2 veces sobre ese registro, y otra vez clickamos 2 veces. Nos aparece información detallada sobre el proceso, donde podemos ver la estadística de memoria.

La memoria “Memoria ABAP” es la que nos interesa y la presenta en KB mientras que en el debug en Bytes, hay que dividir entre 1024 tantas veces según queramos comparar en KB, MB o GB.

Consumo memoria sap

Con esto podemos monitorizar el uso de memoria individual de cada proceso pero lo que nos interesa es llevarlo al código, la clase que usa la SM66 es cl_server_info, en concreto el método “get_session_list” el cual devuelve en una tabla los proceso y sus valores, podremos leer de esta tabla nuestro proceso en ejecución y obtener los valores de memoria.

Sigo con el proceso en ejecución, lanzo el método en un programa de pruebas:

Consumo memoria sap

Buscamos en la tabla ZNXXXXXX:

Consumo memoria sap

Con esto en teoría podremos controlar el uso de memoria.

Espero que os sea de ayuda.

Consumo memoria sap.

 

https://setevalapinsap.com/2017/08/cl_server_info-2

https://piageridmya.ga/cpu-solo-abre-cl-tiempo-de-ejecucion

0

Añadir un comentario