Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 将日志文件从根目录传输到AmazonEC2中的临时内存_Ruby On Rails_Ruby_Regex_Logging_Amazon Ec2 - Fatal编程技术网

Ruby on rails 将日志文件从根目录传输到AmazonEC2中的临时内存

Ruby on rails 将日志文件从根目录传输到AmazonEC2中的临时内存,ruby-on-rails,ruby,regex,logging,amazon-ec2,Ruby On Rails,Ruby,Regex,Logging,Amazon Ec2,我已将RubyonRails应用程序/网站放在AmazonEC2M1大型(64位)实例上。 我还使用Nginx和瘦服务器作为应用程序和webserver resp。 现在,该网站已经上线,并产生了大量的请求和日志。 我已经将应用程序放在根目录上,我面临的问题是它有7.5GB的空间,而且这个空间可能在几天内就用完了 我想将日志文件从应用程序移动到临时内存/挂载,这样就不会出现任何内存问题。 但是,我不想将整个应用程序移动到临时内存中,因为它是易失性的,可能会导致数据丢失 有人能告诉我,如果只可能将

我已将RubyonRails应用程序/网站放在AmazonEC2M1大型(64位)实例上。 我还使用Nginx和瘦服务器作为应用程序和webserver resp。 现在,该网站已经上线,并产生了大量的请求和日志。 我已经将应用程序放在根目录上,我面临的问题是它有7.5GB的空间,而且这个空间可能在几天内就用完了

我想将日志文件从应用程序移动到临时内存/挂载,这样就不会出现任何内存问题。 但是,我不想将整个应用程序移动到临时内存中,因为它是易失性的,可能会导致数据丢失

有人能告诉我,如果只可能将日志文件从应用程序移动到临时内存中


请帮我解决这个问题。

首先,创建要将日志文件放入
/mnt
驱动器的位置

sudo mkdir /mnt/logs
sudo chown ubuntu /mnt/logs
现在,从应用程序中删除本地日志文件夹(当然,当应用程序和nginx关闭时)

并创建从本地位置到
/mnt

ln -s /mnt/logs /my/app/logs
您可以对
ngnix
日志目录执行相同的操作

现在您可以再次启动服务器了。日志将保存到
/mnt/Logs


不过,我想指出的是,这不应取代轮换这些日志的需要——使用它可以确保日志文件得到正确管理。

它不是内存。它短暂的磁盘存储。与EBS卷的区别在于,如果实例停止或失败,它将连接到主机并将丢失。您可以将日志写入临时存储,但您需要启用它,这只能在启动时完成。@datasage是的,它已启用。。但是如何在磁盘存储中传输日志文件谢谢您的解决方案。。我可以问你,在chown命令中ubuntu是强制的吗?或者chown/mnt/logs do
ubuntu
是AWS ubuntu机器中默认用户的名字。我甚至不确定这是否必要——只要你给它写权限。
ln -s /mnt/logs /my/app/logs