`

Rails 开发环境日志过大时自动清理

阅读更多
Rails 开发环境日志过大时自动清理

新建文件:config/initializers/clear_logs.rb

例:开发模式下当日志大于10m时自动清理
# config/initializers/clear_logs.rb
if Rails.env.development?
  MAX_LOG_SIZE = 10.megabytes

  logs = [ File.join(Rails.root, 'log', 'development.log'), File.join(Rails.root, 'log', 'test.log') ]

  logs.each do |log|
    if File.size?(log).to_i > MAX_LOG_SIZE
      $stdout.puts "Removing Log: #{log}"
      `rm #{log}`
    end
  end
end
分享到:
评论

相关推荐

    The Rails 4 Way

    **Rails环境与配置**章节是本书的一个重要组成部分,主要介绍了Rails 4的应用程序如何设置不同的运行环境以及相关的配置选项。 1. **Bundler(包管理器)** - Bundler是一个用于Ruby项目依赖管理的工具。 - 它...

    rails web server deploy guide

    10. **日志管理**:生产环境的日志管理很重要,可以使用如Logrotate来定期清理和归档日志。 11. **错误监控**:集成如Sentry或Airbrake这样的错误追踪服务,以便在生产环境中快速识别和处理问题。 12. **持续集成/...

    rails 常见灵异错误汇总

    在Ruby on Rails开发过程中,开发者可能会遇到各种各样的“灵异”错误,这些错误往往由于框架的特性、编码习惯或不常见的配置问题引起。本文将深入探讨这些常见问题,并提供解决策略,帮助开发者提高代码质量和调试...

    java基础之rails命令大全.pdf

    ### Java基础之Rails命令大全知识点解析 #### 一、Rails 命令概述 Rails 是一个用于 Web 开发的框架,它...以上命令涵盖了 Rails 应用程序开发过程中常见的操作需求,熟练掌握这些命令有助于提高开发效率和管理能力。

    new_rails_app

    8. **开发环境和部署**:Rails 支持多种环境(开发、测试、生产),每种环境有自己的配置。 9. **Rake**:Ruby 的任务执行工具,可以执行数据库迁移、运行测试、清理缓存等任务。 10. **测试**:Rails 提供 TDD...

    Laravel开发-golem

    它的设计灵感来源于 Ruby on Rails,旨在提供一个优雅且强大的开发环境,让开发者能够更加高效地构建高质量的 web 应用程序。Laravel 的核心特性包括路由、中间件、依赖注入、数据库迁移、Eloquent ORM 和任务调度等...

    ruby语言开发的音乐推荐网站源码(作业).zip

    Ruby是一种面向对象的、动态类型的编程语言,常用于Web开发,尤其与Rails框架结合时,能快速构建功能丰富的Web应用。在这个作业中,我们可以看到一些关键的项目结构和文件,它们是构建Web应用的基础。 1. **Gemfile...

    Laravel开发-metaforcmf

    8. **自动化任务调度**:Artisan 命令行工具提供了定时任务调度功能,开发者可以设置计划任务来执行周期性工作,如清理缓存、发送邮件等。 9. **安全与认证**:Laravel 内置的安全机制,如 CSRF 保护、密码哈希等,...

    Ruby-RubyonRails应用程序的安全注意事项清单

    Ruby on Rails(简称RoR)是一款基于Ruby语言的开源Web应用框架,以其高效、简洁和MVC(模型-视图-控制器)架构而受到开发者喜爱。然而,随着Web应用复杂性的增加,安全性问题也日益凸显。为了确保Ruby on Rails应用...

    log

    在日志文件过大时,还可以配置`Logger`进行日志滚动,自动创建新的日志文件。 4. **自定义日志格式**:默认的日志格式包括时间戳、日志级别和消息。但通过设置`formatter`,我们可以定制日志的输出格式,比如包含...

    symfony权威指南

    #### 三、开发环境与工具 - **代码生成工具**:快速原型设计和后台管理系统的创建。 - **测试框架**:内建的单元测试和功能测试框架支持测试驱动的开发。 - **开发者工具栏**:显示页面的相关信息,加快调试速度。 ...

    safe_proj_code:在 rails 初始化上创建 rake 的 GEM,它检查用户是否具有对项目的正确访问权限,如果没有,则 gem 运行 rm -rf 并从用户环境中删除项目

    `safe_proj_code` 是一个专为 Ruby on Rails 开发的 GEM,它的主要功能是在 Rails 应用程序初始化阶段提供安全控制。这个 GEM 的核心是通过 Rake 任务来检查用户是否拥有对特定项目的正确访问权限。如果用户不具备...

    Laravel开发-laravel-forecast .zip.zip

    Laravel是Taylor Otwell于2011年创建的,旨在提供一个更加简洁、优雅的PHP开发环境。它吸收了其他框架的优点,如Ruby on Rails、Sinatra和Symfony,并结合PHP的最佳实践,使开发者能够快速构建功能丰富的Web应用...

    Laravel开发-laravel-envol .zip

    这个文件对每个开发环境都非常重要,因为它包含了数据库连接信息、密钥、邮件设置等关键配置。例如: ```env APP_NAME=Laravel APP_ENV=local APP_KEY=base64:... APP_DEBUG=true APP_URL=http://localhost LOG_...

    从官方下载的thinkPHP3.1.3完整版本(含所有扩展)

    总的来说,下载的ThinkPHP3.1.3完整版本为开发者提供了一个全面的开发环境,包含了开发Web应用所需的所有组件和功能。尽管它是一个较老的版本,但对于学习基础或者维护旧项目来说,仍然具有很高的价值。然而,对于新...

    Ruby-Puma一个Ruby的并发Web服务器

    10. **故障恢复**:Puma能够检测到挂起的线程并自动清理,防止服务器因死锁或其他问题而崩溃。 总的来说,Puma是Ruby开发者构建高性能Web应用的理想选择,其并发性和高效性使其成为生产环境中的首选Web服务器。了解...

    Ruby-Howitzer基于ruby的验收测试框架

    3. **数据库清理**:在每个测试之间,Howitzer会自动清理数据库,确保测试环境的隔离,避免因数据残留导致的误报。 4. **集成测试支持**:Howitzer可以与多种Web框架集成,如Rails、Sinatra等,支持模拟用户登录、...

    Laravel开发-turahe

    **Laravel 开发详解** Laravel 是一个基于 PHP 的优雅且强大的开源 web 开发框架,由 Taylor Otwell 创建。它的设计灵感来源于 Ruby on Rails,旨在让开发者能够更快速、更高效地构建高质量的 web 应用程序。...

    bootleg:Elixir的简单部署和服务器自动化

    5. **环境隔离** - 每个环境(如生产、开发、测试)都有自己独立的配置,确保不同环境间不会相互干扰。 6. **日志记录** - 提供清晰的部署日志,方便排查问题和追踪部署过程。 **使用Bootleg部署Elixir应用** 部署...

    scavenger_hunt_api:scavenger_hunt_api

    6. **Gemfile与Gemfile.lock**:Ruby的依赖管理工具Bundler通过Gemfile定义项目所需的库,Gemfile.lock则记录了具体的版本信息,确保部署环境与开发环境一致。 7. **Rake任务**:Rails提供了Rake,一个用于执行任务...

Global site tag (gtag.js) - Google Analytics