summaryrefslogtreecommitdiffstats
path: root/xlators/features/marker/utils/syncdaemon/resource.py
diff options
context:
space:
mode:
authorVenky Shankar <venky@gluster.com>2011-09-28 16:38:00 +0530
committerVijay Bellur <vijay@gluster.com>2011-10-20 23:26:23 -0700
commitbdf20a205a4d67d5f6d3ac6010a34291c2822a80 (patch)
tree412c56b2d2f765011a7b158f4b31b75a7bffce2b /xlators/features/marker/utils/syncdaemon/resource.py
parent84ebee8c20ce667a5ec5fddc0aa47f8b5bef39f8 (diff)
cli: add geo-replication log-rotate command
Rotating geo-replication master/monitor log files from cli. On invocation, the log file for a given master-slave session is backed up with the current timestamp suffixed to the file name and signal is sent to gsyncd to start logging to a new log file. Sample commands: * Rotate log file for this <master>:<slave> session: gluster volume geo-replication <master> <slave> log-rotate * Rotate log files for all session for master volume <master> gluster volume geo-replication <master> log-rotate * Rotate log files for all sessions: gluster volume geo-replication log-rotate Change-Id: I75f641b4e082a04d5373c18583ca4a1d9651d27a BUG: 3519 Reviewed-on: http://review.gluster.com/529 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Csaba Henk <csaba@gluster.com>
Diffstat (limited to 'xlators/features/marker/utils/syncdaemon/resource.py')
-rw-r--r--xlators/features/marker/utils/syncdaemon/resource.py11
1 files changed, 5 insertions, 6 deletions
diff --git a/xlators/features/marker/utils/syncdaemon/resource.py b/xlators/features/marker/utils/syncdaemon/resource.py
index 3595f428fdd..3454c38234a 100644
--- a/xlators/features/marker/utils/syncdaemon/resource.py
+++ b/xlators/features/marker/utils/syncdaemon/resource.py
@@ -5,7 +5,6 @@ import stat
import time
import errno
import struct
-import select
import socket
import logging
import tempfile
@@ -18,7 +17,7 @@ import repce
from repce import RepceServer, RepceClient
from master import GMaster
import syncdutils
-from syncdutils import GsyncdError
+from syncdutils import GsyncdError, select
UrlRX = re.compile('\A(\w+)://([^ *?[]*)\Z')
HostRX = re.compile('[a-z\d](?:[a-z\d.-]*[a-z\d])?', re.I)
@@ -113,11 +112,11 @@ class Popen(subprocess.Popen):
@classmethod
def init_errhandler(cls):
- """start the thread which hanldes children's error output"""
+ """start the thread which handles children's error output"""
cls.errstore = {}
def tailer():
while True:
- for po in select.select([po.stderr for po in cls.errstore], [], []):
+ for po in select([po.stderr for po in cls.errstore], [], []):
po.lock.acquire()
try:
la = cls.errstore.get(po)
@@ -419,7 +418,7 @@ class SlaveLocal(object):
logging.info("connection inactive for %d seconds, stopping" % int(gconf.timeout))
break
else:
- select.select((), (), ())
+ select((), (), ())
class SlaveRemote(object):
"""mix-in class to implement an interface to a remote slave"""
@@ -826,7 +825,7 @@ class SSH(AbstractUrl, SlaveRemote):
i, o = ret
inf = os.fdopen(i)
repce.send(o, None, '__repce_version__')
- select.select((inf,), (), ())
+ select((inf,), (), ())
repce.recv(inf)
# hack hack hack: store a global reference to the file
# to save it from getting GC'd which implies closing it