xmlrpc 서버의 로깅 출력을 일부 파일로 리디렉션하는 방법

헤만 트

SimpleXMLRPCServer 모듈을 사용하여 rpc 서버를 만들고 있습니다. 서버에 요청을 보낼 때마다 연결 요청이 표시됩니다. 나중에 서버에 대한 요청을 볼 수 있도록이 출력을 일부 파일로 리디렉션하려면 어떻게해야합니까?

이것은 서버용 스크립트입니다.

from SimpleXMLRPCServer import SimpleXMLRPCServer
from SimpleXMLRPCServer import SimpleXMLRPCRequestHandler
import logging
import os
import string
from subprocess import Popen,PIPE 
import xmlrpclib
# Set up logging
logging.basicConfig(level=logging.DEBUG, filename = 'RPCServer.log')
class FileOperation():
'''Class to perform file operation on the Remote machine'''
    def __init__(self):
       self.fh = None
       self.os = os            #adding built-in OS module functionality
       self.string = string    #adding built-in String module functionality

# Restrict to a particular path.

class RequestHandler(SimpleXMLRPCRequestHandler):
    rpc_paths = ('/RPC2',)
# Create server
server = SimpleXMLRPCServer(("localhost", 8000), requestHandler = RequestHandler,allow_none = True, logRequests = True)
server.register_introspection_functions()
server.register_instance(FileOperation(),allow_dotted_names = True )


# Run the server's main loop
try:
    print 'Use Control-C to exit'
    server.serve_forever()
except KeyboardInterrupt:
    print 'Exiting'

요청을 보낼 때마다 다음과 같은 O / P를 받게됩니다.

Use Control-C to exit
127.0.0.1 - - [11/Dec/2013 11:34:29] "POST /RPC2 HTTP/1.1" 200 -
127.0.0.1 - - [11/Dec/2013 11:34:30] "POST /RPC2 HTTP/1.1" 200 -
127.0.0.1 - - [11/Dec/2013 11:34:31] "POST /RPC2 HTTP/1.1" 200 -
127.0.0.1 - - [11/Dec/2013 11:34:32] "POST /RPC2 HTTP/1.1" 200 -
127.0.0.1 - - [11/Dec/2013 11:34:33] "POST /RPC2 HTTP/1.1" 200 -
127.0.0.1 - - [11/Dec/2013 11:34:34] "POST /RPC2 HTTP/1.1" 200 -
127.0.0.1 - - [11/Dec/2013 11:34:35] "POST /RPC2 HTTP/1.1" 200 -

이 O / P를 일부 파일로 리디렉션하려면 어떻게해야합니까? 로깅 구성에서 파일 이름을 설정했지만 O / P가 거기에 가지 않습니다.

잔 카 릴라

메시지는에 기록됩니다 sys.stderr. 당신은

  1. 리디렉션 stderr또는
  2. 하위 클래스 SimpleXMLRPCRequestHandler에서 메서드 재정의하고 원하는 경우 log_message사용하십시오 logging.

원래 메서드는 BaseHTTPRequestHandler.log_message모듈에 BaseHTTPServer있으며 다음과 같습니다.

def log_message(self, format, *args):
    """Log an arbitrary message.

    This is used by all other logging functions.  Override
    it if you have specific logging wishes.

    The first argument, FORMAT, is a format string for the
    message to be logged.  If the format string contains
    any % escapes requiring parameters, they should be
    specified as subsequent arguments (it's just like
    printf!).

    The client host and current date/time are prefixed to
    every message.

    """

    sys.stderr.write("%s - - [%s] %s\n" %
                     (self.address_string(),
                      self.log_date_time_string(),
                      format%args))

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

tailf 및 grep의 출력을 파일로 리디렉션하는 방법

분류에서Dev

PowerShell에서 IF Else 출력을 html 파일로 리디렉션하는 방법

분류에서Dev

Bash의 변수를 기반으로 조건부로 출력을 파일로 리디렉션하는 방법

분류에서Dev

ngrep 출력을 파일로 리디렉션하는 방법

분류에서Dev

두 파일의 출력을 유닉스의 세 번째 파일로 리디렉션하는 방법

분류에서Dev

하위 프로세스의 출력을 파일로 리디렉션하는 방법

분류에서Dev

nohup 출력을 nohup.out 이외의 로그 파일로 리디렉션하는 방법이 있습니까?

분류에서Dev

PowerShell에서 파일 대신 메모리로 출력을 리디렉션하는 방법은 무엇입니까?

분류에서Dev

C #에서 실행할 때 cmd 출력을 사용하여 driverquery를 파일로 리디렉션하는 방법

분류에서Dev

ksh -x의 출력을 유닉스의 파일로 리디렉션하는 방법

분류에서Dev

출력을 C의 파일로 리디렉션하는 방법은 무엇입니까?

분류에서Dev

`apt-file update`의 출력을 파일로 리디렉션하는 방법은 무엇입니까?

분류에서Dev

findstr의 출력을 파일로 리디렉션하는 방법은 무엇입니까?

분류에서Dev

Python의 subprocess.call () 출력을 파일로 리디렉션하는 방법은 무엇입니까?

분류에서Dev

둘 이상의 출력 줄을 텍스트 파일로 리디렉션하는 방법은 무엇입니까?

분류에서Dev

awk의 출력을 파일로 리디렉션하는 방법은 무엇입니까?

분류에서Dev

curl의 출력을 여러 파일로 리디렉션하는 방법은 무엇입니까?

분류에서Dev

파일에서 stdout으로 출력을 리디렉션하는 방법은 무엇입니까?

분류에서Dev

echo 명령 출력을 PHP에서 텍스트 파일로 리디렉션하는 방법

분류에서Dev

Bash에서 Python 스크립트 실행-Python 로깅 파일을 리디렉션하는 방법

분류에서Dev

sqlite3 출력을 파일로 리디렉션하는 방법

분류에서Dev

sqlite3 출력을 파일로 리디렉션하는 방법

분류에서Dev

HTTP에서 HTTPS로 Kubernetes nginx Ingress 리디렉션을 디버깅하는 방법

분류에서Dev

화면에서 프로그램을 실행하고 모든 출력을 파일로 리디렉션하고 분리하는 방법

분류에서Dev

systemd : stdout을 로그 파일로 리디렉션하는 방법

분류에서Dev

htaccess 파일을 사용하여 부정확 한 URL에서 깨끗한 URL로 리디렉션하는 방법

분류에서Dev

UNIX에서 입력 파일의 기본을 출력 파일의 일부로 사용하는 방법

분류에서Dev

catalina.out에서 log4j 로깅을 별도의 파일로 리디렉션하는 방법은 무엇입니까?

분류에서Dev

STDERR을 파일과 콘솔로 리디렉션하고 STDOUT을 파일로만 리디렉션하는 방법

Related 관련 기사

  1. 1

    tailf 및 grep의 출력을 파일로 리디렉션하는 방법

  2. 2

    PowerShell에서 IF Else 출력을 html 파일로 리디렉션하는 방법

  3. 3

    Bash의 변수를 기반으로 조건부로 출력을 파일로 리디렉션하는 방법

  4. 4

    ngrep 출력을 파일로 리디렉션하는 방법

  5. 5

    두 파일의 출력을 유닉스의 세 번째 파일로 리디렉션하는 방법

  6. 6

    하위 프로세스의 출력을 파일로 리디렉션하는 방법

  7. 7

    nohup 출력을 nohup.out 이외의 로그 파일로 리디렉션하는 방법이 있습니까?

  8. 8

    PowerShell에서 파일 대신 메모리로 출력을 리디렉션하는 방법은 무엇입니까?

  9. 9

    C #에서 실행할 때 cmd 출력을 사용하여 driverquery를 파일로 리디렉션하는 방법

  10. 10

    ksh -x의 출력을 유닉스의 파일로 리디렉션하는 방법

  11. 11

    출력을 C의 파일로 리디렉션하는 방법은 무엇입니까?

  12. 12

    `apt-file update`의 출력을 파일로 리디렉션하는 방법은 무엇입니까?

  13. 13

    findstr의 출력을 파일로 리디렉션하는 방법은 무엇입니까?

  14. 14

    Python의 subprocess.call () 출력을 파일로 리디렉션하는 방법은 무엇입니까?

  15. 15

    둘 이상의 출력 줄을 텍스트 파일로 리디렉션하는 방법은 무엇입니까?

  16. 16

    awk의 출력을 파일로 리디렉션하는 방법은 무엇입니까?

  17. 17

    curl의 출력을 여러 파일로 리디렉션하는 방법은 무엇입니까?

  18. 18

    파일에서 stdout으로 출력을 리디렉션하는 방법은 무엇입니까?

  19. 19

    echo 명령 출력을 PHP에서 텍스트 파일로 리디렉션하는 방법

  20. 20

    Bash에서 Python 스크립트 실행-Python 로깅 파일을 리디렉션하는 방법

  21. 21

    sqlite3 출력을 파일로 리디렉션하는 방법

  22. 22

    sqlite3 출력을 파일로 리디렉션하는 방법

  23. 23

    HTTP에서 HTTPS로 Kubernetes nginx Ingress 리디렉션을 디버깅하는 방법

  24. 24

    화면에서 프로그램을 실행하고 모든 출력을 파일로 리디렉션하고 분리하는 방법

  25. 25

    systemd : stdout을 로그 파일로 리디렉션하는 방법

  26. 26

    htaccess 파일을 사용하여 부정확 한 URL에서 깨끗한 URL로 리디렉션하는 방법

  27. 27

    UNIX에서 입력 파일의 기본을 출력 파일의 일부로 사용하는 방법

  28. 28

    catalina.out에서 log4j 로깅을 별도의 파일로 리디렉션하는 방법은 무엇입니까?

  29. 29

    STDERR을 파일과 콘솔로 리디렉션하고 STDOUT을 파일로만 리디렉션하는 방법

뜨겁다태그

보관