diff options
| author | Steven Hiscocks <steven@hiscocks.me.uk> | 2013-02-16 19:10:49 +0000 |
|---|---|---|
| committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2015-07-05 14:19:15 -0400 |
| commit | 445332cb69386e8696332403aca55c60c1df5de7 (patch) | |
| tree | 3e60519ad390487df1f349aa3c2442fa35ef9803 | |
| parent | 029ac59922161565cccbe40e0aeb21af119d4b00 (diff) | |
| download | python-systemd-445332cb69386e8696332403aca55c60c1df5de7.tar.gz | |
systemd-python: _reader now takes unix timestamp in seconds
| -rw-r--r-- | systemd/_reader.c | 9 | ||||
| -rw-r--r-- | systemd/journal.py | 2 |
2 files changed, 7 insertions, 4 deletions
diff --git a/systemd/_reader.c b/systemd/_reader.c index 7aa638b..95e6094 100644 --- a/systemd/_reader.c +++ b/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", ×tamp)) + 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/systemd/journal.py b/systemd/journal.py index 279662e..ab8661e 100644 --- a/systemd/journal.py +++ b/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): |
