redis 存日志

package main

import (
	"fmt"
	"time"

	"github.com/go-redis/redis"
)

func main() {
	start := time.Now()
	client := redis.NewClient(&redis.Options{
		Addr: "127.0.0.1:6379",
	})
	err := client.Ping().Err()
	if err != nil {
		panic(err.Error())
	}
	for i := 0; i < 1000000; i++ {
		now := time.Now()
		nowStr := fmt.Sprintf("%d-%d-%d %02d:%02d:%02d", now.Year(), now.Month(), now.Day(), now.Hour(), now.Minute(), now.Second())
		client.LPush("log", nowStr+" 200 success laskdjflaskjdflkjasdl")
	}
	fmt.Println(time.Since(start))
}

  

package main

import (
	"fmt"
	"os"
	"time"
)

func main() {
	file, err := os.Create("test.log")
	if err != nil {
		panic(err.Error())
	}
	start := time.Now()
	for i := 0; i < 1000000; i++ {
		now := time.Now()
		nowStr := fmt.Sprintf("%d-%d-%d %02d:%02d:%02d", now.Year(), now.Month(), now.Day(), now.Hour(), now.Minute(), now.Second())
		fmt.Fprintln(file, nowStr, "200", "success", "", "laksjdflkjsdal")
	}
	fmt.Println("time:", time.Since(start))
}

  

不对时间进行格式化处理时

对时间进行格式化处理后

可见redis和直接的fmt输出到文件,速度差了十倍左右

但用redis存日志查起来比较容易查,还可以将日期附加到key里区分每一天的日志,具体用文件存储还是redis按需求来

时间: 2024-08-07 05:44:32

redis 存日志的相关文章

linux下利用elk+redis 搭建日志分析平台教程

linux下利用elk+redis 搭建日志分析平台教程 http://www.alliedjeep.com/18084.htm elk 日志分析+redis数据库可以创建一个不错的日志分析平台了,下面我们来看一篇在linux下利用elk+redis 搭建日志分析平台教程,希望例子对各位有帮助. 这个是最新的elk+redis搭建日志分析平台,今年时间是2015年9月11日. Elk分别为 elasticsearch,logstash, kibana 官网为:https://www.elasti

Redis的日志系统

什么是 SLOWLOG Slow log 是 Redis 用来记录查询执行时间的日志系统. 查询执行时间指的是不包括像客户端响应(talking).发送回复等 IO 操作,而单单是执行一个查询命令所耗费的时间. 另外,slow log 保存在内存里面,读写速度非常快,因此你可以放心地使用它,不必担心因为开启 slow log 而损害 Redis 的速度. 设置 SLOWLOG Slow log 的行为由两个配置参数(configuration parameter)指定,可以通过改写 redis.

ELK+redis搭建日志分析平台

ELK+redis搭建日志分析平台 1.ELK简介 ELKStack即Elasticsearch + Logstash + Kibana.日志监控和分析在保障业务稳定运行时,起到了很重要的作用.比如对nginx日志的监控分析,nginx是有日志文件的,它的每个请求的状态等都有日志文件进行记录,所以可以通过读取日志文件来分析:redis的list结构正好可以作为队列使用,用来存储logstash传输的日志数据.然后elasticsearch就可以进行分析和查询了. 本文搭建的的是一个分布式的日志收

使用ElasticSearch+LogStash+Kibana+Redis搭建日志管理服务

1.使用ElasticSearch+LogStash+Kibana+Redis搭建日志管理服务 http://www.tuicool.com/articles/BFzye2 2.ElasticSearch+LogStash+Kibana+Redis日志服务的高可用方案 http://www.tuicool.com/articles/EVzEZzn 3.示例 开源实时日志分析ELK平台部署 http://baidu.blog.51cto.com/71938/1676798?utm_source=t

log4net.redis+logstash+kibana+elasticsearch+redis 实现日志系统

前端时间写了个随笔 log4net.NoSql +ElasticSearch 实现日志记录 ,因项目原因需要把日志根java平台的同事集成采用logstash+kibana+elasticsearch+redis结构实现日志统计分析,所以需要一个将log4net日志输出到redis的组件.没有找到现成的,就自己动手了.参考了 log4net.NoSql 的代码. redis的C#客户端使用了 ServiceStackRedis,json序列化使用 RestSharp.代码结构如下: JsonLa

redis使用日志(3):如何设置持久化

Redis 持久化 Redis虽然是一种内存型数据库,一旦服务器进程退出,数据库的数据就会丢失,为了解决这个问题Redis提供了两种持久化的方案,将内存中的数据保存到磁盘中,避免数据的丢失. 工作目录(redis持久化存储的目录):RDB 和 AOF 公用该目录 # The working directory. # # The DB will be written inside this directory, with the filename specified # above using t

Linux 安装Redis全过程日志

wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable make 前面3步应该没有问题,主要的问题是执行make的时候,出现了异常. 异常一: make[2]: cc: Command not found 异常原因:没有安装gcc 解决方案:yum install gcc-c++ 异常二: zmalloc.h:51:31: error: jemalloc/jema

redis慢日志

redis的slowlog是redis用于记录记录慢查询执行时间的日志系统.由于slowlog只保存在内存中,因此slowlog的效率很高,完全不用担心会影响到redis的性能.Slowlog是Redis从2.2.12版本引入的一条命令. 一.slowlog设置 slowlog有两种设置方式: 1.redis.conf设置 在redis.conf中有关于slowlog的设置: slowlog-log-slower-than 10000 slowlog-max-len 128 其中slowlog-

redis 慢日志 slowlog

1 slowlog是什么 redis的slowlog是redis用于记录记录慢查询执行时间的日志系统.由于slowlog只保存在内存中,因此slowlog的效率很高,完全不用担心会影响到redis的性能.Slowlog是Redis从2.2.12版本引入的一条命令. 2 slowlog设置 参考 http://redis.readthedocs.org/en/latest/server/slowlog.html slowlog有两种设置方式: 2.1 redis.conf设置 在redis.con