Reading Logs

We recommend that you use the pipeline system for reading logs, even in Python. This makes it easier to modularize your offline pipelines (not to mention test them).

Never-the-less, we provide basic python logging bindings if you wish to simply use LogReader natively from within Python.

An example for doing so is provided in ark/logging/bindings/example. This will walk through a log, looking for images, and extracting them to JPEGs.

The API is a subset of the full C++ API. Here is an example:

from ark_logging_py import LogReader

reader = LogReader('path/to/manifest')
cursor = reader.create_read_cursor()

while read_object := cursor.step():
    print(read_object.object_type().name)

If you want to open a log directly from Catalog (realizing that it will download each time you do this):

from ark_logging_py import LogReader

reader = LogReader(Url('4d1b62ab-4adf-43c0-9663-e819b70dcc17'))

Similarly, instead of a GUID, you can pass a URL in to the Url constructor and have it load that.