Configurando os logs no CodeIgniter

Manter log de informações é importante e útil em alguns tipos de sistema. E o CodeIgniter possui configurações bem simples de serem feitas para que seja gerado log em arquivo TXT em cada acesso às páginas da aplicação.

Para configurar esse log você precisa abrir o arquivo ‘application/config/config.php’ e localizar a linha abaixo:

$config['log_threshold'] = 0;

Por padrão o valor setado para ‘log_treshold’ é 0 (zero), que indica que não é para ser gravado nenhum tipo de log.

Mas é possível passar os seguintes valores:

  • 1 – para mensagens de erro, incluindo erros do PHP
  • 2 – para mensagens de debug
  • 3 – para mensagens informativas
  • 4 – para todos os tipos de mensagem

Após salvar essas alterações, já será possível ver os logs gerados no diretório ‘application/logs’. Os arquivos de logo são criados tendo como nome a data atual, o que facilita a localização de arquivos para análise.

É necessário que o diretório ‘application/logs’ tenha permissão de escrita, para que os arquivos sejam criados.

Veja um exemplo de arquivo de log gerado:

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed'); ?>

DEBUG - 2016-04-04 15:18:35 --> Config Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Hooks Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Utf8 Class Initialized
DEBUG - 2016-04-04 15:18:35 --> UTF-8 Support Enabled
DEBUG - 2016-04-04 15:18:35 --> URI Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Router Class Initialized
DEBUG - 2016-04-04 15:18:35 --> No URI present. Default controller set.
DEBUG - 2016-04-04 15:18:35 --> Output Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Security Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Input Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Global POST and COOKIE data sanitized
DEBUG - 2016-04-04 15:18:35 --> Language Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Loader Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: url_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: file_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: text_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: utility_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: number_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: download_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: date_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: breadcrumb_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: messages_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: directory_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: security_helper
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: array_helper
DEBUG - 2016-04-04 15:18:35 --> Database Driver Class Initialized
ERROR - 2016-04-04 15:18:35 --> Severity: 8192  --> mysql_pconnect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead /Volumes/WebRepo/MoveisRimo/system/database/drivers/mysql/mysql_driver.php 91
DEBUG - 2016-04-04 15:18:35 --> Session Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: string_helper
DEBUG - 2016-04-04 15:18:35 --> A session cookie was not found.
DEBUG - 2016-04-04 15:18:35 --> Session routines successfully run
DEBUG - 2016-04-04 15:18:35 --> Pagination Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Encrypt Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Email Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Helper loaded: form_helper
DEBUG - 2016-04-04 15:18:35 --> Form Validation Class Initialized
DEBUG - 2016-04-04 15:18:35 --> FTP Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Upload Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Model Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Model Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Model Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Controller Class Initialized
DEBUG - 2016-04-04 15:18:35 --> Model Class Initialized
DEBUG - 2016-04-04 15:18:35 --> File loaded: ../application/admin/views/includes/header_html.php
DEBUG - 2016-04-04 15:18:35 --> File loaded: ../application/admin/views/includes/footer_html.php
DEBUG - 2016-04-04 15:18:35 --> File loaded: ../application/admin/views/login.php
DEBUG - 2016-04-04 15:18:35 --> Final output sent to browser
DEBUG - 2016-04-04 15:18:35 --> Total execution time: 0.5585

Com esse log gerado pelo CodeIgniter você consegue fazer o debug e localizar vários erros e ainda verificar se as libraries e helpers estão sendo carregados corretamente.