syslog-ng é uma fonte aberta, versão livre e próspera do projeto syslogd que começou há dez anos para sistemas operacionais UNIX-like e Linux. O aplicativo pode operar em modo de servidor ou agente, e suporta o protocolo (Transmission Control Protocol) TCP confiável.
O projeto oferece aos usuários um software de linha de comando que pode ser usado com sucesso como uma solução de gerenciamento de log viável para criar, recolher, classificar, filtrar, para a frente, bem como para armazenar messages.Features log em uma características glanceKey incluem alta performance, confiável transferência, maior confiabilidade, filtragem de mensagens e classificação, etiquetagem e correlação de eventos, suporte para os mais recentes padrões da IETF, e uma comunidade grande usuário.
Com o software syslog-ng, administradores de sistemas qualificados será capaz de conseguir construir uma infra-estrutura flexível e confiável de registro, mesmo em ambientes heterogêneos, sem muito incômodo e em tão curto espaço de tempo como possible.Command-line programa OptionsThe apresenta uma ampla variedade de comando -line opções, entre as quais podemos citar a capacidade de definir a lista de cólon pastas separadas que serão usados para procurar módulos, ver informações módulo, definir o nome do arquivo de configuração eo arquivo de configuração persistente, escrever o arquivo de configuração pré-processados para um arquivo específico, analisar e ler o arquivo de configuração, definir a tomada de controle, bem como para definir o número de I trabalhador / O threads.Getting começou com o programa syslog-ngThe é inteiramente escrito na linguagem de programação C e & rsquo; s distribuído como um arquivo de fontes universal (tarball). Para instalá-lo em seu sistema GNU / Linux, procure primeiro um pré-construir pacotes binários nos repositórios de sua distribuição de software padrão.
Se o software não está disponível em sua distro, baixe o arquivo tar mais tardar a partir Softoware, salve-o em seu computador, descompactá-lo, abra um Terminal Linux e navegue até a localização do arquivo extraído com o & lsquo; cd & rsquo; comando.
Em seguida, executar o & lsquo; ./ configure && make & rsquo; comando para otimizar e compilar o programa para o seu sistema de arquitetura / operacional hardware, seguido pelo & lsquo; make install & rsquo; comando como root ou com sudo para instalar sistema de largura e torná-lo disponível para todos os usuários
O que é novo nesta versão:.
- < li> Características:
- Novo parâmetro adicionado ao loggen:. --permanent (-T) Wich é para o envio dos logs indefinidamente
- Corrige:
- A partir de agora, syslog-ng não deixará de funcionar quando se usa um destino Riemann e sem atributos estão definidos.
- Em algum destino programa casos respawned durante syslog-ng stop / restart.
- Max tamanho do pacote de fonte spoof está definido para 1024 (anteriormente: 256).
- syslog.socket Removido do arquivo de serviço em sistemas que utilizam systemd. Syslog-ng lê as mensagens diretamente do jornal em sistemas com systemd.
- Em alguns casos, macros localtime relacionados tinha um valor errado (por exemplo:. YEAR $).
- tratamento de transações fixado no destino SQL. Em algumas circunstâncias, quando ambos selecionar e inserir comandos foram executados em uma única transação e selecione falhadas (ex .: no caso de mssql), as mensagens de log relacionados aos comandos de inserção, discriminadas pela transação inválido, foram perdidos.
- Corrigido um memleak in driver destino SQL. O memleak ocorreu durante uma das falhas de transação.
- O certificado, que não consta na lista de impressões digitais é rejeitada a partir de agora.
- cheque Hostname no certificado TLS é insensível caso a partir de agora.
- Fix fiação em EOF para `unix-stream ()` sockets. Causa raiz da fiação era que um socket unix-dgram foi criado mesmo em caso de unix-stream.
O que é novo na versão 3.6.1:
- Esta é a primeira versão de produção imediata de syslog- ng OSE 3.6. Mais de 25 mil linhas de código fof mudou, com cerca de 500 arquivo modificado.
- As novas dependências:
- PCRE é agora uma dependência necessária de syslog-ng, e não é opcional mais.
- defaults Modificados:
- Modo de Listagem é agora ** ** habilitado por padrão. Para desativá-lo, use o `rosca (não)` na seção de opções global.
- O controle de versão do `biblioteca interna libsyslog-ng` mudou: em vez de usar sempre o número da versão atual, vamos agora tentar manter a compatibilidade ABI durante a vida de um ramo estável. Por isso, usamos apenas os dois primeiros componentes da nossa versão como a base da versão da biblioteca. Outro número fará parte do SONAME também, mas isso só vai mudar quando quebrar a compatibilidade.
- O SONAME está definido para `libsyslog-ng-3.6.so.0`, e continuará a ser o mesmo durante alfa e beta releases, mesmo quando as mudanças de ABI. Vamos começar a bater a versão após a primeira versão estável a partir deste ramo, se necessário.
- Os `linhas-Flush ()` definir agora o padrão é * 100 *, em vez de * 1 *, para aumentar a velocidade.
- Características:
- Novas opções:
- Um novo `-domínio personalizado ()` configuração global foi introduzido, o que permite que o administrador para substituir o nome de domínio local usado por syslog-ng. Ela afeta todas as mensagens de log gerado localmente.
- Adicionado um `uso-rcptid ()` opção global, que diz syslog-ng para atribuir uma ID de recepção para cada mensagem recebida e gerada pelo syslog-ng. Este ID está disponível como o `$ RCPTID` macro, e é único em um determinado host. O contador envolve em torno de 48 bits e nunca é zero.
- Novos drivers:
- O pseudofile () `` motorista destino é um piloto muito simples, visando a entrega de mensagens para arquivos especiais em `/ proc` ou` / dev`. Ele abre e fecha o arquivo em cada mensagem, em vez de mantê-la aberta. Ele não suporta modelos no nome do arquivo, e não tem uma fila (e, como tal, não é adequada em situações de tráfego intenso).
- Os novos `nodejs ()` driver de código (implementado como uma macro SCL) adiciona um driver de código que permite que syslog-ng para aceitar mensagens de aplicações Node.js que usam o `winston` API logging.
- O novo `syslog-systemd ()` fonte substitui o antigo suporte implícito para a mesma coisa. Os usuários que utilizam systemd são aconselhados a usar o `system ()` source, ou este novo quando eles querem receber logs de systemd através da tomada de `/ run / systemd / journal / syslog`.
- O novo driver de código systemd-journal () lê o Jornal diretamente, e não através da tomada de encaminhamento de syslog. O `system ()` defaults de origem para usar esta fonte quando systemd é detectado.
- Adicionado groupset reescrita objeto. Groupset permite ao usuário modificar várias propriedades da mensagem log de uma vez. Ele também permite referenciar o valor antigo da propriedade como o $ _ macro.
- Características do [Incubadora] [incubadora]:
- Os `$ (ou)` função de modelo que retorna o primeiro argumento não vazio agora está incluído em si-ng syslog.
- O `$ (preenchimento)` função de modelo, ao texto pad com estofamento personalizado a um determinado comprimento também está incluído.
- O `$ (grafite-output)` função de modelo, a ser utilizado para o envio de métricas para [Grafite] [grafite] foi portado da Incubadora. O `grafite ()` destino bloco SCL também está disponível agora, para torná-lo ainda mais fácil falar com grafite.
- O `riemann ()` destino, que permite o envio de métricas para o sistema [Riemann] [riemann] monitoramento também foi portado da Incubadora.
- [grafite]: http://graphite.wikidot.com/
- [incubadora]: https://github.com/balabit/syslog-ng-incubator
- [riemann]: http://riemann.io/
- destinos rosca:
- Foram implementadas várias das características para todos os destinos com rosca:
- `AMQP ()`, `mongodb ()`, `Redis ()`, `riemann ()`, `smtp ()` e `pisão ()`.
- Os destinos ganhou apoio para `SEQNUM` persistência: o contador será preservada através de recargas e reinicia .
- Uma nova opção chamada `tentativas ()` foi implementada para todos eles, que controla quantas vezes a entrega da mensagem é repetida antes de deixá-la cair.
- O `acelerador ()` opção agora é implementado, e trabalha para todos os drivers de destino acima mencionados.
- O ciclo de entrega de mensagens foi otimizado para fazer menos ciclos de sono / despertar, o que deve fazer os motoristas não só mais rápido, mas mais CPU amigável também.
- Diversos novos recursos:
- O `multi-linha-mode ()` opção ganhou uma nova configuração: `prefix-suffix`, que funciona de forma semelhante ao` prefix-garbage` (que é o novo nome para `regexp`), exceto que acrescenta a parte de lixo para a mensagem, em vez de descartá-lo.
- Este novo modo pode ser usado para contornar a ausência de um limite de tempo.
- Filtros padrão para PCRE correspondente, em vez do anterior padrão POSIX regexp.
- O `system ()` source vai agora analisar `@ cim` mensagens marcadas como JSON, se o módulo JSON está disponível em tempo de execução. Isso melhora a inter-operação com outro software que usa o * Common Information Model *.
- Pode-se agora usar vários elementos na tecla `()` e `excluir ()` opções de qualquer declaração de valores de pares.
- Agora é possível carregar não apenas um único certificado ao usar TLS, mas uma cadeia de certificados.
- Estatísticas:
- As Estatísticas contador para contadores programa agora inclui o timestamp da última atualização.
- Um novo `estatísticas em tempo de vida ()` opção global foi introduzida, que controla a frequência com que os contadores dinâmicos são expirado. O timer não é exato, alguns contadores podem viver um pouco mais longo do que o tempo especificado.
- contadores dinâmicos agora são limpos a cada `estatísticas em tempo de vida ()` minutos (inadimplentes até 10 minutos) em vez de apenas as recargas. Esta mudança foi feita para reduzir a memória usada pelo contadores dinâmicos.
- Existe agora um `estatística internal_queue_length`, que mostra o comprimento da fila interna. Isso é muito útil para ver se o `interno ()` fonte não estiver ligado, ou se ele não está sendo esvaziado rápido o suficiente (o que, mais uma vez, indica um erro mais grave).
- MongoDB:
- O `mongodb ()` driver agora suporta autenticação, mesmo quando se usa conjuntos de réplicas. Quando voltar a ligar a outro membro do conjunto, o motorista será automaticamente autenticar novamente.
- A opção --with-libmongo-client` do script configure agora suporta `auto` como um valor, e, então, detectar se a usar a versão do sistema da biblioteca ou a cópia interno. O padrão é `auto` agora, que prefere a biblioteca do sistema sobre a cópia interno.
- O motorista não adiciona automaticamente um campo `_id` para a mensagem: o servidor vai fazer isso automaticamente, caso não esteja presente. Isso permite que os usuários substituam o campo de dentro de sua config-ng syslog.
- Uma nova `tentativas ()` opção pode ser usado para dizer ao motorista quantas vezes ele deve tentar inserir uma mensagem no banco de dados antes de desistir (o padrão é 3). Isso corrige o caso em que uma mensagem desonestos poderia realizar-se toda a fila, como foi repetida para sempre.
- O motorista agora permite `safe-mode ()`, por padrão.
- Agora há um tempo limite de um minuto para operações MongoDB. Se os tempos de uma operação fora, ele será considerado falhou.
- O motorista pode agora conectar ao MongoDB via Sockets Unix.
- O `double ()` tipo dica agora é suportado pelo condutor.
- No destino MongoDB, reconectando em um ambiente de conjunto de réplicas agora funciona corretamente, e de forma confiável.
- Para construir com o destino MongoDB syslog-ng, libmongo-client versão 0.1.8+ agora é necessário. (A cópia interna tem sido actualizado em conformidade.)
- muda o destino SMTP:
- O `smtp ()` destino agora suporta um `tentativas (opção)`, que controla quantas vezes a entrega da mensagem será tentada antes de deixá-la cair.
- Os modelos utilizados no destino agora honrar as configurações de fuso horário.
- O motorista vai abortar, se as opções necessárias (qualquer um dos `a ()`, `cc ()`, `bcc ()` e `a partir de ()` e `assunto ()` e `corpo ()`) não estão definidos.
- Unix Sockets Domínio:
- O `unix-dgram ()` e `unix-stream ()` fontes agora extrair UNIX credenciais (PID, UID e GID do aplicativo de envio) a partir das mensagens passadas, se houver. No Linux, FreeBSD e, a caminho do executável pertencente a PID é extraído também, juntamente com argumentos de linha de comando.
- Os valores extraídos estão disponíveis em `$ {. Unix.pid}`, `$ {}. Unix.uid`, `$ {. Unix.gid}`, `$ {. Unix.exe}` e ` $ {. unix.cmdline} `, respectivamente.
- O `system ()` source irá substituir a macro PID com o valor de `$ {. Unix.pid}`, se presente.
- JSON:
- O JSON-parser ganhou uma `extrato-prefix ()` opção, que pode ser usado para dizer o analisador para extrair apenas membros JSON a partir de uma sub-árvore específica do objeto de entrada.
- Exemplo: `json-parser (extrato-prefix (& quot; foo.bar [5] & quot;));`
- Assumindo que o objeto de entrada é chamado msg, isso é equivalente ao seguinte código javascript: `msg.foo.bar [5]`
- A expressão resultante deve ser um objeto JSON, de modo que syslog-ng pode extrair seus membros em LogMessage pares nome-valor.
- Isto também funciona quando o objeto de nível superior é um array, como `extrato-prefix ()` permite a utilização de um índice de matriz no primeiro nível indireto, por exemplo: 'json-parser (extrato-prefix (& quot [5]; & quot;)); `, que se traduz em` msg [5] ` .
- O `$ (formato JSON)` função de modelo agora lida com o `double ()` tipo dica.
- Depuração:
- Ao enviar mensagens para stderr no modo de depuração, preceder um timestamp para as mensagens.
- O novo `$ RUNID` macro está disponível para modelos, que muda o seu valor cada vez syslog-ng é reiniciado, mas não quando recarregado.
- Um arquivo de supressão Valgrind foi adicionado (disponível sob `contrib / valgrind /`), para ajudar na depuração de vazamentos de memória no syslog-ng. Ele suprime um par de falsos positivos conhecidos, e algumas outras coisas em bibliotecas de terceiros.
- Um novo utilitário, `sistema de expand`, foi adicionado, que retorna o que o` system () `source iria expandir a.
- Bugfixes:
- A confiabilidade do `usertty ()` motorista destino foi muito melhorada. Anteriormente, algumas partes que não foram thread-safe, o que poderia resultar em um comportamento estranho.
- O manuseio de bandeiras de escape relacionados de `csvparser ()` foi alterado: em vez de estas bandeiras substituindo todas as outras bandeiras (mesmo não-relacionados de escape), se o sinalizador para definir é uma-bandeira fuga, ele vai manter todos os não escapam a bandeiras, e definir o novo. Se for um tal bandeira não, então ele irá limpar todas as bandeiras, e definir as bandeiras de fuga anteriores, e a nova bandeira.
- Este, em essência, significa que quando definir sinalizadores em uma `csvparser ()`, se é uma bandeira de fuga, apenas escapar bandeiras serão afetados. Se não, então escapar bandeiras não serão afetados em tudo.
- O destino SQL agora continua corretamente contagem $ SEQNUM após uma recarga, em vez de começar do zero.
- Fundição erro eliminado em Riemann destino quando métrica é aplicada a um campo vazio.
- A partir de agora, syslog-ng sempre excluir atributos que conflito com as propriedades em destino Riemann (caso contrário, o valor do atributo iria substituir a propriedade).
- Quando tring para parar syslog-ng, enquanto uma recarga está em andamento, syslog-ng vai agora corretamente desligado corretamente.
- não recarregar um erro de execução arquivo de configuração que contém agora termina em um acidente, é capaz de retorno para a configuração inicial. (Erro de execução: arquivo de configuração é gramaticalmente válido, mas que contém valor inválido, por exemplo .: errado nome da coluna de banco de dados)
- Quando o nome do host local não é um FQDN, eo resolvedor local não retornar um FQDN também, não syslog-ng não abortar mais, mas continua usando um hostname não FQDN depois de emitir um aviso sobre a fonte interna.
- Além disso, syslog-ng vai tentar resolver o FQDN mais difícil.: Quando vários nomes são devolvidos, ele irá procurar o primeiro FQDN um, em vez de parar na principal nome
- O script `update-patterndb` agora irá funcionar corretamente quando o diretório de trabalho atual contém .pdb.
- Patterndb fixo para aplicar condição mesmo contexto-id está em falta.
- Agora vamos lidar corretamente com o tempo andar para trás em patterndb: ele irá realinhar a sua idéia do tempo atual com o sistema. Isso corrige um bug onde os tempos de espera não funcionar corretamente quando o tempo sistema foi criado para trás.
- O comando merge` pdbtool `agora gerará versão 4 arquivos patterndb.
- O apoio capacidade Linux agora é corretamente detectado automaticamente pelo script de configuração, e é desabilitada por padrão no FreeBSD 9 +, como deveria.
- O `file ()` e `rede ()` (incluindo `tcp ()` et al) fontes agora vai definir o `$ SOURCE` macro.
- O módulo basicfuncs foi fixado para funcionar corretamente em arquiteturas de 32 bits.
- Os `estatísticas stored` não é mais incrementado por vários motoristas quando eles querem dizer` processed`.
- O recurso de Indução é agora mais exigente sobre o tipo de tipo de sugestões ele aceita, permitindo que se possa utilizar as funções de modelo em - por exemplo -. `$ (Formato JSON)` pares
- Todas as várias funções de modelo cripto-relacionado agora verificar que o comprimento desejado do digest não é maior do que o próprio resumo. Se um valor maior for solicitada, eles vão para truncar o comprimento digest.
- Os `$ (GeoIP)` função de modelo agora trabalha com `rosca (sim)` também.
- O `in-list ()` filter foi fixada a olhar para todos os elementos da lista, em vez de apenas o último.
- Corrigido uma afirmação quando se utiliza o `match ()` filter em certas circunstâncias.
- O `system ()` source não vai acrescentar `/ dev / kmsg` (ou` / proc / kmsg` em kernels mais antigos) para as fontes padrão se usando o diário systemd, porque os logs do kernel estão incluídas na revista.
- O `system ()` source não incluirá `/ dev / kmsg` (ou` / proc / kmsg`) quando executado dentro de um contêiner Linux.
- Várias correções de vazamento de memória em torno da base de código.
- Alterar controle de mensagem tomada de aviso para depurar
- Abertura tomada de controle desativada quando syslog-ng é usado por apenas sintaxe controlo.
- Correções para tentativas (funcionalidade). Repetir contador incrementado por cada erro de mensagem escrita (incluindo erros de conexão de rede) que pode levar a mensagem perdida.
- Mudanças diversas:
- Agora enviamos uma & quot; & quot Guia de Contribuintes; no arquivo `CONTRIBUTING.md`.
O que é novo na versão 3.5.1:
- Esta é a primeira versão estável da série 3.5 , adicionando um número de características em relação a 3,4, um resultado de aproximadamente oito meses de desenvolvimento. Esta versão inclui todas as correções do recente lançamento 3.4.5, e uma série de novos recursos.
- Bugfixes:
- A condição de corrida na mensagem de log código contagem de referência que, por vezes, levou a falhas foi corrigido. [# 255]
- Um erro de uso após livre que, por vezes, aconteceu depois de uma recarga, e causou a corrupção de memória também foi corrigido. [# 253]
- patterndb foi corrigido para não criar uma nova instância de recarga: Desta forma, o velho não é vazada, e db-parser () não esquecer o estado de correlação, nem a sua idéia de tempo atual em reload. [# 257]
- O arquivo syslog-ng.spec não tenta instalar o arquivo ChangeLog longo removido mais.
O que é novo na versão 3.5.0 Beta 3:
- Template escapar:
- Template escapando foi alterada de forma incompatível: anteriormente, tanto o léxico eo compilador modelo usado o caráter '' para escapar, o que era confuso. O compilador modelo usa '$$' para escapar o caractere '$', e '@@' escapar '@'.
- Se um valor não numérico segue '@', um aviso será impressa.
- Bugfixes:
- syslog-ng deve compilar novamente em plataformas não-Linux.
- O flush () e as opções de o destino do arquivo fsync () foram fixados, e eles devem trabalhar da mesma forma como o fazem agora em 3.3 e 3.4.
- A biblioteca hiredis devem ser detectados no padrão incluem caminhos, por isso não precisa necessariamente especificar --with-libhiredis sistemas não não-Debian. Disse opção também foi feita para o trabalho.
- A corrupção de memória foi fixado no @ STRING @ parser de db-parser ().
- Exclui agora trabalhar corretamente com valores de pares (), e eles não são ignorados se o valor para excluir está no conjunto padrão.
O que é novo na versão 3.3.2:.
- Estabilidade e correções de vazamento de memória
O que é novo na versão 3.3.1:
- O suporte integrado para eventos MongoDB, JSON formatados, e uma arquitetura multi-threaded que dimensiona syslog-ng-se na mensagem 800000 / segundo intervalo.
O que é novo na versão 3.2.1:
- Este é o primeiro lançamento da nova versão principal de syslog-ng, que contém a lista mais longa de recursos desde o início do projeto syslog-ng como correlação mensagem de registo e apoio plugin.
O que é novo na versão 3.2 Alpha 2:
- Agora compila em todas as plataformas e a unidade / funcional testes também executado. (Testado: AIX, HP-UX, Solaris, FreeBSD, Linux, Tru64)
- pdbtool Fixo saída match --debug-padrão para ESTRING analisadores.
- Corrigido um possível vazamento de memória no léxico, que se acumulam no SIGHUPs caso.
- Solaris Fixo correntes de apoio dispositivo.
- Atacante portado todas as correções de syslog-ng OSE 3.0 & 3.1
- módulo de contabilidade processo Desativar por padrão, pois não compilar em plataformas não-Linux.
- Adicionado & quot; match pdbtool --file & quot; opção de ler e analisar um arquivo de log existente.
- Adicionado & quot; test pdbtool & quot; para verificar as amostras de registro no arquivo patterndb.
- Adicionado & quot; dont-criar-tables & quot; bandeira para o destino SQL para inibir a criação da tabela automática.
- Adicionado & quot; condição () & quot; apoio à manifestação de reescrita, o que torna possível saltar reescrever as regras que não correspondem a uma expressão de filtro.
- Adicionado & quot; - módulo-path & quot; linha de comando opção para controlar onde os módulos são carregados a partir da linha de comando.
O que é novo na versão 3.1 Beta 1:
- Suporte para patterndb v3
- pdbtool
- tags de mensagens
- regravar dados estruturados
- integração Macro e nome-valor
- Nome-value
- Patterndb melhorias analisador
- As informações sobre instalações não-portáteis
- Nome-value
- Patterndb melhorias analisador
- As informações sobre instalações não-portáteis
Melhorias de desempenho par
Melhorias de desempenho par
Comentários não encontrado