今天一直在做opentsdb 大量导入数据的工作。 中间遇到了一些值得记录的问题, 这里随手记一下 明天好好整理

1. 多进程logger

python的logging模块不支持多进程,但我们可以用syslog模块 把进程写给linux/unix的syslog服务。

syslog 有local 0 - 7 8个通道。 把一个通道配置到你的日志文件 然后写入即可

2. 多进程

apply_async 这个函数有点奇怪。下面的代码df如果是string就可以。如果不是string, 那么子进程好像不会运行。。

#!/usr/bin/python
__author__ = 'mingwli'
import syslog
import multiprocessing
from multiprocessing import Pool
import pydevd syslog.openlog('file: %s' % "My file", 0, syslog.LOG_LOCAL0) def write_log(f):
syslog.syslog('Log msg: %s' % 'test msg') pool = Pool(processes=20)
result = []
mylist = range(0, 20)
for df in mylist:
result.append(pool.apply_async(write_log, (str(df)))) pool.close()
pool.join()
print "all done"

最新文章

  1. 从零开始编写自己的C#框架(28)——建模、架构与框架
  2. HTTP 2.0与HTTP 1.1区别
  3. height:100%不起作用(无效),div全屏
  4. bzoj3504: [Cqoi2014]危桥--最大流
  5. git init 和 git init --bare 的区别
  6. [原]Ubuntu 14.04编译Android Kernel
  7. Layout---poj3169(差分约束+最短路spfa)
  8. ASP.NET验证控件一
  9. JavaScript学习笔记(8)——JavaScript语法之运算符
  10. 重要常用的Lunix命令
  11. mysql一个表中多个字段对应另一个表的id如何查询?
  12. qt反走样(简选)
  13. $.Event 你不知道的用法
  14. Gartner 认定 Microsoft 为具有远见卓识的云基础结构即服务提供商
  15. [转]lftp的致命错误:证书验证:不信任
  16. Swift iOS 日期操作:NSDate、NSDateFormatter
  17. 三、如何使用QtDesigner
  18. Linux 中交换空间 (swap)应该分多大才好?
  19. docker17.03.2安装
  20. 获得32位UUID字符串和指定数目的UUID

热门文章

  1. IOS 中使用token机制来验证用户的安全性
  2. Java线程-线程的基本状态
  3. sql server查看某个表上的触发器
  4. Elasticsearch の 查询类型
  5. q-oo-p , a piggy domain name. Very cute. boyan.zheng at foxmail.com
  6. 将Jar安装到本地仓库和Jar上传到私服
  7. qemu启动vm后,如何host上使用ssh连接?
  8. 第2节 hive基本操作:12、hive当中的hql语法
  9. nodejs运行机制
  10. 循环中i++和++i哪个好