mongodb中日期存储格式的问题

时间:2011-03-01 06:02:12

标签: datetime mongodb

我使用mongodb的日期类型来存储日期..我从服务器的nginx log [17/Feb/2011:00:07:03 +0000]获取以下数据,这意味着日期是2011年2月17日,时间是00:07:03,时区是UTC /格林威治标准时间。我正在使用perl的datetime模块格式化日期并将其存储在mongodb中..problem在mongodb中存储就像这样..

{ "_id" : ObjectId("4d6c8b2ff991e70412000000"), "date" : "Thu Feb 17 2011 05:37:03 GMT+0530 (IST)" }

为什么将它存储在IST ..我希望将日期存储为UTC / GMT

我的perl代码就是这个

use DateTime;
use MongoDB;
use MongoDB::OID;
my $conn = MongoDB::Connection->new(host => 'localhost', port => 27017);
$dt = DateTime->new(
    year       => 2011,
    month      => 2,
    day        => 17, 
    hour       => 00, 
    minute     => 07, 
    second     => 03, 
    time_zone  => 'UTC'
    );  
$conn->testing->logs->insert({"date"=>$dt});

请指导我

1 个答案:

答案 0 :(得分:0)

MongoDB / BSON在内部使用UTC时间戳。

您的驱动程序正在根据本地时区或mongo控制台进行一些转换。不确定你在这里使用的是什么。