问题列表 - 第15297页

使用SMTPHandler在Python中记录MemoryHandler中的输出

我将日志记录模块MemoryHandler设置为为SMTPHandler目标排队调试和错误消息.我想要的是当包含所有调试语句的进程错误(每行一个)时发送一封电子邮件.我得到的是每个调试消息的单独电子邮件.

这似乎应该是微不足道的,并且是日志包的一部分,但我找不到任何关于它的内容,没有例子,谷歌上没有任何内容.

log = logging.getLogger()
log.setLevel(logging.DEBUG)
debug_format = logging.Formatter("%(levelname)s at %(asctime)s in %(filename)s (line %(lineno)d):: %(message)s")

# write errors to email
error_mail_subject = "ERROR: Script error in %s on %s" % (sys.argv[0], os.uname()[1])
error_mail_handler = logging.handlers.SMTPHandler(SMTP_HOST, 'errors@'+os.uname()[1], [LOG_EMAIL], error_mail_subject)
error_mail_handler.setLevel(logging.ERROR)
#error_mail_handler.setLevel(logging.DEBUG)
error_mail_handler.setFormatter(debug_format)

# buffer debug messages so they can be sent with error emails
memory_handler = logging.handlers.MemoryHandler(1024*10, logging.ERROR, error_mail_handler)
memory_handler.setLevel(logging.DEBUG)

# attach handlers
log.addHandler(memory_handler)
log.addHandler(error_mail_handler)
Run Code Online (Sandbox Code Playgroud)

与此相关:

error_mail_handler如果它是目标,我是否需要明确地添加到记录器memory_handler?应该error_mail_handler设置为DEBUG还是ERROR目标?当它被喂食时它甚至需要一个目标memory_handler吗?

很想看到解决这个问题的任何人的一些工作代码.

python logging

19
推荐指数
2
解决办法
2万
查看次数

获取RESTful请求所看到的返回计数

所以,我想知道我将从RESTful uri GET请求中获得多少结果.我不知道有什么方法可以做到这一点.有没有办法做到这一点?由于REST只抛出属性,我不知道它是否能够计算其结果,但它可以跳过结果并获取结果的子集.

有人有什么建议吗?

哦,我的设置是一个LINQ to SQL,它填充了一个可查询的通用List.数据服务使该列表可用.我已经尝试了对列表的计数,但我总是得到数据库的最大行,这不是我正在寻找的.

rest entity-framework

17
推荐指数
1
解决办法
7767
查看次数

用16位字更快地在C#中交换字节序

必须有一个更快更好的方法来交换16位字的字节然后这个:

public static void Swap(byte[] data)
{
    for (int i = 0; i < data.Length; i += 2)
    {
        byte b = data[i];
        data[i] = data[i + 1];
        data[i + 1] = b;
    }
}
Run Code Online (Sandbox Code Playgroud)

有没有人有想法?

c# endianness

10
推荐指数
3
解决办法
1万
查看次数

Clojure开发:IDE还是REPL?

我一直在使用Clojure一段时间,并希望创建一些比玩具更大更复杂的项目.我在过去的几年里一直在使用Java,并且已经习惯了IDE为我做的事情 - 编译了很多类,将它们打包在罐子里,为用户创建批处理文件以启动它们.

当我查看Clojure中的开发示例时,他们似乎是按照加载文件的方式进入REPL,看看它们是如何工作的,编辑文件,重新加载,重复.Nary在任何地方生成一个类或jar.在Stuart Halloway非常棒的"Programming Clojure"中,我找不到一个例如"gen-class"的例子.我使用的Clojure IDE(ClojureBox和enlojure NetBeans插件)似乎促进了相同的工作流程.

这是故意的吗?这些工具是不成熟还是我没有"得到它"?

我想听一些人们的工作流程示例,如果可能的话,他们创建了一些普通用户(而不是其他开发人员)使用的非平凡程序.

感谢您分享您的意见.

ide clojure read-eval-print-loop

18
推荐指数
3
解决办法
3787
查看次数

LLVM是避免动态强制转换规则的例外吗?

LLVM拥有自己的RTTI替代方案,这是对内置RTTI的速度提升,并允许动态转换为没有vtable(dyn_cast)的类.但是,它仍然可以完全按照使用的方式dynamic_cast<>使用,尽管它允许它与更多类一起使用.

dyn_cast<> 模板文档

LLVM是一个声誉良好的C++项目,所以这似乎是在面对一个普遍的说法,即太多的动态转换是设计糟糕的标志,也被称为代码气味.当然,性能更好的动态模型无法改善其在设计中的使用,而不是标准dynamic_cast.那么谁在这里?在C++代码中,是否存在大规模使用动态铸造是一个很好的设计选择的情况?谷歌在LLVM中继源代码中出现了690次这种动态转换.

用途dyn_cast<>在LLVM干线

c++ design-patterns dynamic-cast llvm

6
推荐指数
1
解决办法
1314
查看次数

如何跨多个服务器分区Mysql?

我知道水平分区......你可以创建很多表.

你怎么能用多台服务器做到这一点?这将允许Mysql扩展.

在X服务器上创建X表?

有没有人愿意解释,或者有一个好的初学者教程(循序渐进)教你如何跨多个服务器进行分区?

mysql scaling partitioning scalability

19
推荐指数
1
解决办法
1万
查看次数

分组,汇总和求和树数据的最佳方法是什么?

给出一个自引用表

Item 
-------------
Id (pk)
ParentId (fk)
Run Code Online (Sandbox Code Playgroud)

使用相关值的相关表

ItemValue
-------------
ItemId (fk)
Amount
Run Code Online (Sandbox Code Playgroud)

还有一些样本数据

Item                       ItemValues 
Id      ParentId           ItemId      Amount
--------------------       ----------------------
1       null               1           10
2       1                  3           40
3       1                  3           20
4       2                  4           10
5       2                  5           30
6       null
7       6
8       7
Run Code Online (Sandbox Code Playgroud)

我需要一个Item.Id直接的孩子,带着ItemValue.Amounts他们,他们的孩子和他们的孩子一直到树上的所有人的总和.

例如,如果1传入,则树将是输出2, 3, 4, 5的直接子节点2, 3

 ItemId    Amount
 ------------------
 2         40     (values from ItemIds 4 & 5)
 3         60     (values from ItemId 3) …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-server-2005 hierarchical

2
推荐指数
1
解决办法
1773
查看次数

C#4.0编译器生成的IL可以在CLR 2.0上运行吗?

C#4.0编译器生成的IL可以在CLR 2.0上运行吗?

为了澄清,我不是在询问VS 2010多目标(VS选择正确的编译器版本),我想知道csc.exe 4.0是否支持多目标...

.net c#

6
推荐指数
1
解决办法
1112
查看次数

如何修复因"过时"而失败的SVN提交?

在我的存储库中,我有两个修订版.src代码在修订版2上,但我有一个搞砸了的文件,所以我把它还原为修订版1.

经过几个小时的调试,javafile工作,但我不能提交它.SVN说javafile已经过时了.这可能是因为我正在编辑javafile.java rev1,对吗?

我该如何解决这个问题?我知道我可以将我修改过的javafile rev1代码复制/粘贴到它的rev2对应物中,然后提交,但还有其他方法吗?我是否错误地使用SVN?

svn

38
推荐指数
2
解决办法
7万
查看次数

使用模板调试C++代码和使用gdb调试STL

这里的gdb用户对使用模板和STL调试代码的能力有何看法?

你是否使用任何技巧使调试变得更简单?也许是一些Python脚本?或者你对gdb目前的方式感到满意(版本6.x,还没试过7.x)?

谢谢.

c++ debugging templates gdb stl

7
推荐指数
2
解决办法
8153
查看次数