Vamos falar sobre registro centralizado

Este artigo é uma continuação do texto sobre monitoramento . Aqui, proponho falar com você sobre o papel dos logs na avaliação do estado do site observado, ver o que eles podem nos dar e também levantar a questão - "é possível separar os logs das métricas?"





Ao longo do caminho, retornarei a algumas das teses expressas na publicação anterior, portanto, recomendo que você se familiarize com elas primeiro.





Então, vamos falar sobre o registro.





A propósito, o que será correto: registro ou registro? Pessoalmente, inclino-me para a segunda opção, simplesmente porque loGGing, mas noto que a maioria das pessoas prefere a primeira. E você?






Interrogatório

Antes de começar um novo artigo, quero retornar brevemente ao anterior. Vários temas foram levantados nos comentários, os quais, em minha opinião, deveriam receber algumas sugestões.





Recolhe tudo ou apenas o valor mínimo?

Aqui, minha posição é que você precisa coletar todas as métricas que o objeto é capaz de fornecer. Como observou @BugM, eles estão no banco de dados, não pedem comida, não incomodam ninguém. Mas se você não os tem, mas de repente precisou deles, especialmente no mês passado, digamos, então nada poderá ser feito.





: « – , , , ».





ML, . , , () . , , ( ML), .





, , ?

. , , :





… ,





, , . , . , .





@sizziff .





«» , 150%, , , :





Engenheiro inundado com alertas
,

@Dr_Wut :





— , — spf. , , . — .





, , - , – , .





- -

.





- – «» , (, …). – .





- - – , - . , – BI-.





.





.






, , , , , , , .





, , . :





– ; , :





2019-04-23 00:39:10,092  INFO  DatabaseConnector – Connection estabilished
      
      



. – . /, , , .





– ; , . API. , , Nginx:





66.249.65.62 - - [06/Nov/2014:19:12:14 +0600] "GET /?q=%E0%A6%A6%E0%A7%8B%E0%A7%9F%E0%A6%BE HTTP/1.1" 200 4356 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
      
      



. , .





– , .





: , , , , – , , , , . , , , , , .





, « ?».





– , , .





– , database_error_count. , , - , , ( ) . :





2019-04-27 00:39:10,092  ERROR  DatabaseConnector – Error connecting to database MSSQLDB – connection refused on port 1433
      
      



– .





, . , , «» , , , , , , .





, . -, , , , … !





– HTTP- , , , , , , :





, , , . Observability – .





? ? ? ? , .





:





  • (99% - API - - , - )





  • (- API)





  • ( )





. .





, HTTP – .





. :





  1. DMZ (trace ID) ; !





  2. , , -, , -,





, trace ID , – .





, :





– , :









  • ;









, – Pull Push.





Pull – ( , , ), , //- . – ; – , .





Push – / / . , , .





, , ( , ), .





– plain text, jsonl, logsft, . – , .





– , .





:





@timestamp<time>:      
application<string>:  ,    ;      
host<string>:         ,    
log_type<string>:     ; application|access|.... (     application )
trace_id<string>:      ( )
      
      



.





, :





message<string>:           
generic_message<string>:    
level<string>:              
level_value<int>:           
logger_name<string>:      ,   ( )
thread_name<string>:      ,   ( )
stack_trace<string>:      ;     -      ( )
      
      



:





status_code<int>:              
elapsed_time<int>:          ,      
requested_resource<string>:  
method<string>:              
      
      



.





, .





:





  • – NoSQL , , . , , –





  • – , - , . , ,





, , «EMERGENCY», , , , , . , «FATAL» - .





, «generic_message». .





– ( , ).





– , . :





:





Error on AMQP connection <0.12956.79> (127.0.0.1:52879 -> 127.0.0.1:5672, state: starting):
      
      



, :





Error on AMQP connection <{connection_id}> ({remote_host} -> {destination_host}, state: {connection_state}):
      
      



.





? :





  • ; , , . ,





  • ; «session_id»





  • , ( , ), ( )





. .





, . Elasticsearch, , , Loki . , - https://habr.com/ru/company/badoo/blog/507718/.





, , .





:

























, ( , ).





:





  1. - , ERROR





  2. – , ( , )





  3. , – , , ,





:





O usuário de monitoramento se move de cima para baixo, analisando o incidente
,

, :





  • ;





  • , ; , ,





, ?





, – , , . .





, , , – .





Talvez mais tarde apareça outro artigo, já com exemplos do uso de tecnologias e práticas específicas, no qual tentaremos implementar o que foi descrito anteriormente e ver como funciona.








All Articles