summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Hiscocks <steven@hiscocks.me.uk>2013-02-16 19:10:49 +0000
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2013-02-22 16:57:44 +0100
commit518dc5dff557116db3f072eb9d0a9492b6226778 (patch)
treeb5d5c5cf9bce53e10b023fc4d79fee6b11c6d002
parent83718af6f59fb3a6359c8da1f8bc8b8fd8799106 (diff)
systemd-python: _reader now takes unix timestamp in seconds
-rw-r--r--src/python-systemd/_reader.c9
-rw-r--r--src/python-systemd/journal.py2
2 files changed, 7 insertions, 4 deletions
diff --git a/src/python-systemd/_reader.c b/src/python-systemd/_reader.c
index 7aa638b076..95e6094162 100644
--- a/src/python-systemd/_reader.c
+++ b/src/python-systemd/_reader.c
@@ -336,14 +336,17 @@ Journal_seek(Journal *self, PyObject *args, PyObject *keywds)
PyDoc_STRVAR(Journal_seek_realtime__doc__,
"seek_realtime(realtime) -> None\n\n"
"Seek to nearest matching journal entry to `realtime`. Argument\n"
-"`realtime` can must be an integer unix timestamp in usecs.");
+"`realtime` can must be an integer unix timestamp.");
static PyObject *
Journal_seek_realtime(Journal *self, PyObject *args)
{
- uint64_t timestamp;
- if (! PyArg_ParseTuple(args, "K", &timestamp))
+ double timedouble;
+ if (! PyArg_ParseTuple(args, "d", &timedouble))
return NULL;
+ uint64_t timestamp;
+ timestamp = (uint64_t) (timedouble * 1.0E6);
+
if ((int64_t) timestamp < 0LL) {
PyErr_SetString(PyExc_ValueError, "Time must be positive integer");
return NULL;
diff --git a/src/python-systemd/journal.py b/src/python-systemd/journal.py
index 279662e6a6..ab8661e987 100644
--- a/src/python-systemd/journal.py
+++ b/src/python-systemd/journal.py
@@ -126,7 +126,7 @@ class Journal(_Journal):
def seek_realtime(self, timestamp):
if isinstance(timestamp, datetime.datetime):
- timestamp = int(timestamp.strftime("%s%f"))
+ timestamp = float(timestamp.strftime("%s.%f"))
return super(Journal, self).seek_realtime(timestamp)
def seek_monotonic(self, timestamp, bootid=None):