Eu tenho dois urls one.example.com e two.example.com, existe uma maneira no syslog conf de capturar qual URL foi usada para atingir o servidor?
Eu preciso modificar um banco de dados com base nessas informações.
Atualizar
Eu tenho um dispositivo que tem o busybox e o syslogd instalados. Eu sou capaz de definir um endereço no dispositivo para o syslog, por exemplo 1.1.1.1:514. Mas eu não sou capaz de fazer mais no dispositivo do que isso.
Eu tenho, por exemplo, 100 dispositivos, 50 são do tipo A e 50 são do tipo B. O problema é que ao usar 1.1.1.1:514 em cada dispositivo como o endereço do servidor syslog, ao receber as informações do dispositivo no servidor syslog remoto Eu não consigo diferenciar se o dispositivo é do tipo A ou tipo B.
Eu tenho a seguinte solução em mente, embora possa haver outra maneira de conseguir isso. Se eu criar dois subdomínios e apontá-los para o mesmo endereço, ou seja, typea.example.com e typeb.example.com, então, em teoria, em dispositivos com um tipo AI, o endereço do syslog remoto será definido como typea.example.com:514 e para o tipo B, typeb.example.com:514. Ambos os subdomínios apontarão para 1.1.1.1, portanto, as informações do syslog agora estão sendo recebidas pelos dispositivos do Tipo A e pelos dispositivos do Tipo B.
Eu preciso agora descobrir como no syslog.conf no servidor remoto, descobrir se a informação foi recebida por um dispositivo usando typea.example.com ou typeb.example.com.
O servidor não tem o apache instalado, etc, no entanto, no PHP, por exemplo, podemos usar $_SERVER
e normalmente eu seria capaz de recuperar essas informações, $_SERVER['HTTP_HOST']
. Existe alguma maneira de fazer isso no syslog.conf no servidor syslog remoto.
Como mencionado, esta é uma solução que tenho em mente e pode não ser a única. Syslog é novo para mim e atualmente estou envolvendo minha cabeça em torno disso. Pelo que entendi em vez de variáveis ou parâmetros, o syslog usa macros. Nenhuma das macros fornecidas parece me dar a informação que eu preciso.
Eu sei que também posso definir o syslog dizendo
syslogd -R 1.1.1.1:514
Existe de qualquer maneira aqui eu posso incluir mais informações, por exemplo:
syslogd -R 1.1.1.1:514 type=a
Em seguida, posso dizer que use $TYPE
para obter o valor ou, como alternativa, adicionar um cabeçalho personalizado ao syslog.
Como você provavelmente pode dizer que estou quebrando meu cérebro para soluções e batendo paredes de tijolos. Qualquer solução ou documentação que me aponte na direção correta seria muito apreciada.
O ponto final seria mencionar também estou olhando para redirecionar as informações do syslog para um script PHP ou um C (eu vou dizer script, mas eu sei que estou errado), a fim de examinar as informações lá e, em seguida, inserir no DB.
Simplesmente preciso de uma maneira de diferenciar pelo tipo A ou tipo B. Espero que isso resolva as coisas e não sejam apenas as divagações de um homem louco.