Hola, chicos,
¡Buenas noches!

En esta publicación demostraré cómo validar a través de SQL Server si un servidor está respondiendo a la red, usando CLR (C#) y la clase PING, que simula una solicitud de ping que realiza en el indicador de DOS en Windows o en Unix Shell.

A diario utilizo mucho esta función para comprobar si, por ejemplo, un servidor de intercambio de archivos está disponible para escribir archivos de rutina de bases de datos. De lo contrario, puedo hacer que mi rutina envíe un correo electrónico o incluso escriba estos archivos en otro directorio. También podemos usar esta función para crear monitoreo de servidor. De todos modos, las posibilidades son muchas, y varían según tus necesidades y creatividad.

Código fuente de la función CLR (C#):

using System;
using System.Data.SqlTypes;
using System.Net.NetworkInformation;

public partial class UserDefinedFunctions
{
    [Microsoft.SqlServer.Server.SqlFunction]
    public static SqlBoolean fncMaquina_Ligada(SqlString Ds_Hostname)
    {

        try
        {
            var ping = new Ping();
            var reply = ping.Send(Ds_Hostname.Value, 5); //timeout em segundos

            return (reply != null) && (reply.Status == IPStatus.Success);
        }
        catch (Exception e)
        {
            return false;
        }

    }
}

Una vez compilado en la base de datos, podemos usar la función así:

SQL Server - Como verificar se a máquina está ligada check computer server is online ping
SQL Server: cómo verificar si la máquina está encendida. Verificar que el servidor de la computadora esté haciendo ping en línea.

SQL Server - Como verificar se a máquina está ligada check computer server is online ping 2
SQL Server: cómo verificar si la máquina está encendida. Verificar que el servidor de la computadora esté en línea ping 2

¡Y eso es todo, amigos!
Un abrazo grande y nos vemos en el próximo post.

SQL Server: cómo verificar si la máquina está encendida y verificar que el servidor de la computadora esté haciendo ping en línea

SQL Server: cómo verificar si la máquina está encendida y verificar que el servidor de la computadora esté haciendo ping en línea