Tool responsible to read Apache log fiels and register each access into Ratchet (Access Statisitics Tool).
Para iniciar o processo de instalação é necessario ter uma cópia do Logger no computador onde se deseja fazer a instalação.
Essa cópia pode ser feita através do comando "git clone" ou através de download da versao desejada.
- Copia do Logger no servidor onde a aplicação será instalada
- Uma instancia de MongoDB acessível
- ArticleMeta acessível
- Verificar arquivo requirements.txt para lista de dependencias python
- Acessar o diretório da aplicação
- Instalar dependencias python
#> pip install -r requirements.txt
- Instalar aplicação
#> python setup.py install
Crie ou edite o arquivo websites.csv (baseado no websites.csv.template).
`csv collection_id,website,website_id,acron_in_log_file_name arg,classic,arg,ar bio,classic,bio,bi bol,classic,bol,bo cci,classic,cci,cc chl,classic,chl,cl cic,classic,cic,ci col,classic,col,co cri,classic,cri,cr cub,classic,cub,cu ecu,classic,ecu,ec edc,classic,edc,educa esp,classic,esp,es inv,classic,inv,cinov mex,classic,mex,mx pef,classic,pef,pef per,classic,per,pe ppg,classic,ppg,ppegeo pro,classic,pro,pro prt,classic,prt,pt pry,classic,pry,py psi,classic,psi,pepsic rve,classic,rve,revenf rvo,classic,rvo,revodonto rvt,classic,rvt,revtur scl,classic,scl,br scl,new,nbr,nbr ses,classic,ses,ses spa,classic,spa,sp sss,classic,sss,ss sza,classic,sza,za ury,classic,ury,uy ven,classic,ven,ve wid,classic,wid,wi
`
Edite o arquivo que corresponde a config.ini, editando ou adicionando valor para
` WEBSITES_CONFIGURATION_PATH=/path/websites.csv
`
Copiar o arquivo de template de configuração.
#> cp config.ini.template config.ini
Criar uma variável de ambiente com o path para o arquivo de configuração
#> export LOGGER_SETTINGS_FILE=config.ini
Os parâmetros a serem configurados sao:
mongo_uri
Caminho para a base de dados MongoDB.
rabbitmq
Caminho para o rabbimq. O RabbitMQ só será necessário se o inspetor de diretório de logs (inspector.py) for utilizado.
logs_source
Local onde serao depositados os arquivos de log do apache para processamento.
robots_file
Caminho para arquivo com lista de robos. Esta lista de robos é utilizada para ignorar a contagem de acessos originados por user_agent compatível com os nomes disponíveis nesta lista.
counter_compliant
Indicar se o processamento de logs irá considerar as regras do Counter Code of Practice 4 para a contagem de acessos.
log_format
Indicar o formato do log do apache. O Logger utiliza a biblioteca apachelog para fazer o parsing de cada linha de log. Verificar a documentação desta biblioteca para mais informações sobre como mapear uma linha de log.
articlemeta
Path para a API Thrift do ArticleMeta, ex: 127.0.0.1:11621.
Também é possível indicar a URL da API Resftul.
Existem duas maneiras de processar os logs do Apache utilizando o Logger ( logger_inspector, logger_loadlogs_scielo). Após a instalação do Logger, três console scripts serao habilitados no terminal.
logger_inspector
Este comando inspeciona um diretório a espera de arquivos de logs. Uma vez que um arquivo de log é depositado no diretório indicado, um processamento de log será enviado para uma fila de processamento de logs gerida através do celery.
Para tanto, é necessário ter uma fila iniciada antes da execução do comando.
Para mais informação, Executar:
#> logger_inspector --help
logger_loadlogs_scielo
Este comando processa os logs disponíveis em um diretório.
Para mais informação, Executar:
#> logger_loadlogs_scielo --help
logger_loadlogs_readcube
Este comando processa os logs disponíveis em um diretório. O formato dos aquivos de log devem seguir o formato de arquivos fornecidos pelo ReadCube.
Para mais informação, Executar:
#> logger_loadlogs_readcube --help
Iniciar uma Celery task é pré-requisito caso o logger_inspector seja utilizado.
Para iniciar a task o seguinte comando deve ser executado, e uma instância de rabbibmq deve estar disponível e devidamente configurada no arquivo de configuração.
#> celery -A logger.tasks worker -l DEBUG