Skip to main content

Fast read/write of AVRO files

Project description

# fastavro [![Build Status](https://travis-ci.org/fastavro/fastavro.svg?branch=master)](https://travis-ci.org/fastavro/fastavro) [![Documentation Status](https://readthedocs.org/projects/fastavro/badge/?version=latest)](http://fastavro.readthedocs.io/en/latest/?badge=latest) [![codecov](https://codecov.io/gh/fastavro/fastavro/branch/master/graph/badge.svg)](https://codecov.io/gh/fastavro/fastavro)

Because the Apache Python avro package is written in pure Python, it is relatively slow. In one test case, it takes about 14 seconds to iterate through a file of 10,000 records. By comparison, the JAVA avro SDK reads the same file in 1.9 seconds.

The fastavro library was written to offer performance comparable to the Java library. With regular CPython, fastavro uses C extensions which allow it to iterate the same 10,000 record file in 1.7 seconds. With PyPy, this drops to 1.5 seconds (to be fair, the JAVA benchmark is doing some extra JSON encoding/decoding).

fastavro supports the following Python versions:

  • Python 2.7

  • Python 3.5

  • Python 3.6

  • Python 3.7

  • PyPy

  • PyPy3

## Supported Features

  • File Writer

  • File Reader (iterating via records or blocks)

  • Schemaless Writer

  • Schemaless Reader

  • JSON Writer

  • JSON Reader

  • Snappy and Deflate codecs

  • Schema resolution

  • Aliases

  • Logical Types

## Missing Features

  • Anything involving Avro’s RPC features

  • Parsing schemas into the canonical form

  • Schema fingerprinting

[Cython]: http://cython.org/

# Documentation

Documentation is available at http://fastavro.readthedocs.io/en/latest/

# Installing fastavro is available both on [PyPi](http://pypi.python.org/pypi)

pip install fastavro

and on [conda-forge](https://conda-forge.github.io) conda channel.

conda install -c conda-forge fastavro

# Contributing

  • Bugs and new feature requests typically start as github issues where they can be discussed. I try to resolve these as time affords, but PRs are welcome from all.

  • Get approval from discussing on the github issue before opening the pull request

  • Tests must be passing for pull request to be considered

Developer requirements can be installed with pip install -r developer_requirements.txt. If those are installed, you can run the tests with ./run-tests.sh. If you have trouble installing those dependencies, you can run docker build . to run the tests inside a docker container. This won’t test on all versions of python or on pypy, so it’s possible to still get CI failures after making a pull request, but we can work through those errors if/when they happen.

### Releasing

We release both to [pypi][pypi] and to [conda-forge][conda-forge].

We assume you have [twine][twine] installed and that you’ve created your own fork of [fastavro-feedstock][feedstock].

  • Make sure the tests pass

  • Run make tag

  • Copy the windows build artifacts for the new version from https://ci.appveyor.com/project/scottbelden/fastavro to the dist folder

  • Copy the linux build artifacts for the new version from https://github.com/fastavro/fastavro/releases/tag/ to the dist folder

  • Run make publish

  • Note the sha signature emitted at the above

  • Switch to feedstock directory and edit recipe/meta.yaml
    • Update version and sha256 variables at the top of the file

    • Run python recipe/test_recipe.py

    • Submit a [PR][pr]

[conda-forge]: https://conda-forge.org/ [feedstock]: https://github.com/conda-forge/fastavro-feedstock [pr]: https://conda-forge.org/#update_recipe [pypi]: https://pypi-hypernode.com/pypi [twine]: https://pypi-hypernode.com/pypi/twine

# Changes

See the [ChangeLog]

[ChangeLog]: https://github.com/fastavro/fastavro/blob/master/ChangeLog

# Contact

[Project Home](https://github.com/fastavro/fastavro)

Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fastavro-0.22.0.tar.gz (502.6 kB view details)

Uploaded Source

Built Distributions

fastavro-0.22.0-cp37-cp37m-win_amd64.whl (317.5 kB view details)

Uploaded CPython 3.7m Windows x86-64

fastavro-0.22.0-cp37-cp37m-win32.whl (273.8 kB view details)

Uploaded CPython 3.7m Windows x86

fastavro-0.22.0-cp37-cp37m-manylinux1_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.7m

fastavro-0.22.0-cp37-cp37m-macosx_10_13_x86_64.whl (387.9 kB view details)

Uploaded CPython 3.7m macOS 10.13+ x86-64

fastavro-0.22.0-cp36-cp36m-win_amd64.whl (316.6 kB view details)

Uploaded CPython 3.6m Windows x86-64

fastavro-0.22.0-cp36-cp36m-win32.whl (273.4 kB view details)

Uploaded CPython 3.6m Windows x86

fastavro-0.22.0-cp36-cp36m-manylinux1_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.6m

fastavro-0.22.0-cp36-cp36m-macosx_10_13_x86_64.whl (403.3 kB view details)

Uploaded CPython 3.6m macOS 10.13+ x86-64

fastavro-0.22.0-cp35-cp35m-win_amd64.whl (300.0 kB view details)

Uploaded CPython 3.5m Windows x86-64

fastavro-0.22.0-cp35-cp35m-win32.whl (257.6 kB view details)

Uploaded CPython 3.5m Windows x86

fastavro-0.22.0-cp35-cp35m-manylinux1_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.5m

fastavro-0.22.0-cp35-cp35m-macosx_10_13_x86_64.whl (370.3 kB view details)

Uploaded CPython 3.5m macOS 10.13+ x86-64

fastavro-0.22.0-cp27-cp27mu-manylinux1_x86_64.whl (1.0 MB view details)

Uploaded CPython 2.7mu

fastavro-0.22.0-cp27-cp27m-win_amd64.whl (302.2 kB view details)

Uploaded CPython 2.7m Windows x86-64

fastavro-0.22.0-cp27-cp27m-win32.whl (261.1 kB view details)

Uploaded CPython 2.7m Windows x86

fastavro-0.22.0-cp27-cp27m-manylinux1_x86_64.whl (1.0 MB view details)

Uploaded CPython 2.7m

fastavro-0.22.0-cp27-cp27m-macosx_10_13_x86_64.whl (376.7 kB view details)

Uploaded CPython 2.7m macOS 10.13+ x86-64

File details

Details for the file fastavro-0.22.0.tar.gz.

File metadata

  • Download URL: fastavro-0.22.0.tar.gz
  • Upload date:
  • Size: 502.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0.tar.gz
Algorithm Hash digest
SHA256 5e199da7d5239664a2b65cddd4c7495cabaac1fa31924646612d390219818cb2
MD5 007769a6dbce7370f086ac208678f019
BLAKE2b-256 8e60b450c42b89325a349af143c06785085c69e9eab79f5c3c6a510f5cc56e3a

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 317.5 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 ec31fcf2698f870f2fd634cadd2c1f968842c513844a53f37530fb3872c1a6a7
MD5 5f53d1cd85f70cfadccbec53f62d17bf
BLAKE2b-256 dc3649801096186ccb2a79a4c95203a141480baed7829b57744c782ccd2b2628

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp37-cp37m-win32.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 273.8 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 94642b0bc9600223dbe99724b15cd86dd08eb7a9056c4519db89feadfb6c16d8
MD5 626c9c1028a6252e4df303b0d46c2bf8
BLAKE2b-256 8211a0d175d4fae4f865959b438eabed97d31fb56f1e10e5bc6a8826dec8f157

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp37-cp37m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 5d68bab43690d2a2d655d187fba79880c9e777ba396c7477fe370513c5974f73
MD5 b36c2eeb2d69b3abf83028dbe813463d
BLAKE2b-256 a356ba43f7c6aa1b6ebe90383d61860b1a58df3613733cc4ef9c4a749d059b87

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp37-cp37m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp37-cp37m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 387.9 kB
  • Tags: CPython 3.7m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp37-cp37m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 5096b2d43c886be1b71ff1116edfc938bcb828abbdd43d57549e404f0e20466d
MD5 295fe2f971d6350979e050428dfe4be4
BLAKE2b-256 adbdfe7892ab97dca3b0268d540533fa395d4e6880e5e381cb072830a62966cb

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 316.6 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 326f2ab1f6fcce48099027e19bb2cc370cbedd927d950ab449aa65fe2d3e4538
MD5 616d714baa8fa0728f33b01e89a9729e
BLAKE2b-256 649ac6ef3fc3b3fdfa17d303ef1fc2f18153731e63b6262acd87400e2ab4e797

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp36-cp36m-win32.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 273.4 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 b5dfab25825f54bf596b6aaffb1f340f488b85e68a29746229fd5cb1dca50db6
MD5 0a2b5b45920435fbee98a79c8004f209
BLAKE2b-256 9cd16d611e55537e42fcaac4ca4daa9f859a878d485469231e68cec700ecc866

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 81b645258e60f69fddf1fd7950b50a6a95bd3eb1f8e4a277aab79acb2ef8630c
MD5 eb809b94af94dfefdc7195a81acd0749
BLAKE2b-256 ae40116f81f46458c4c3d96f44ec351a83d713d7d814b0fab59eefd8fd40923f

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp36-cp36m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp36-cp36m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 403.3 kB
  • Tags: CPython 3.6m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp36-cp36m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 1f438e474e3a19950009acb8c5f3d85456570cf1fffba68c383d7372f2a0ab51
MD5 fad9de80e75559cc5303a00afb342a09
BLAKE2b-256 47365d8e272567c1bf9448bbcef8be6fff53754f8c8ab5301a53badcfe51976e

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp35-cp35m-win_amd64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp35-cp35m-win_amd64.whl
  • Upload date:
  • Size: 300.0 kB
  • Tags: CPython 3.5m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 057dc8f3d7ec9001f84382452d3eb4dac3cc380b4df6fa7e8e81e1866f9d502a
MD5 75c89ad5241e426b2f5d3b5555c6d4dc
BLAKE2b-256 ccc9dbfce0b97135e2c3b9160fcffd62ff7061192d753eb1eeedc85080135ef9

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp35-cp35m-win32.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp35-cp35m-win32.whl
  • Upload date:
  • Size: 257.6 kB
  • Tags: CPython 3.5m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 7555b918ecc173d71a77155e1c93d76fdd119f838ad54331484af96271998a76
MD5 8f9cdc4a2bdc64cdeccca43e33b5807f
BLAKE2b-256 4304a423b492217e0f044b043c5ae3c549c79ef27c26148b5850810f2d029299

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp35-cp35m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: CPython 3.5m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 97e96356da5decaca5f980dbe9aab2fac5f613722461342289b711893a7e1e85
MD5 71af15c0f206153706758b8efb41268b
BLAKE2b-256 49e289868ae2148085edb4c27a3e013b14b1291a2dfc80a886212453940fba73

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp35-cp35m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp35-cp35m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 370.3 kB
  • Tags: CPython 3.5m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp35-cp35m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 c201cf8a4103d1a0c0bc46164b918e08a41ea66a1b1b6696d755f482ecad1970
MD5 93e9b01ae51bf5950f634e3a08d1f08b
BLAKE2b-256 5c5521c4202a94e5fdb65e046a90d221d9cf292324004ea6d894642c00b18d59

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp27-cp27mu-manylinux1_x86_64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 2.7mu
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 225366abed797201942506e8df100b97240049e408d378f98de231b16f120249
MD5 f8ffe348a73d94c3bd4500d4ce7989f5
BLAKE2b-256 726d21cd05fdc7f7cae4e000d6b83a4e17adeb19bbdb06027df7768546b48992

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp27-cp27m-win_amd64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp27-cp27m-win_amd64.whl
  • Upload date:
  • Size: 302.2 kB
  • Tags: CPython 2.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 c312f3882c08aebf0e03b477732b30105d93842410a53baa91287cd7d6246973
MD5 3b31c37ada300f7984456f06a892803a
BLAKE2b-256 c482ac36756cb9839abed91803845c22b76ae49703be6035c91b877686d98f05

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp27-cp27m-win32.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp27-cp27m-win32.whl
  • Upload date:
  • Size: 261.1 kB
  • Tags: CPython 2.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp27-cp27m-win32.whl
Algorithm Hash digest
SHA256 7a99a206b46d1be26368da28feab0190f7b45a289cc1f56cfe83097695b6be68
MD5 7380784e352a75d58a95421780764c05
BLAKE2b-256 f654b8eb5ef259a8b0688df1d8197a4e09624c359bac139229772bc18b44b619

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp27-cp27m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 2.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 dbf2b47e96c41981ad1e09367df51fa61cf1c7ad810f913741b4e7352c0063e3
MD5 868667d932a83f4f9e4abb0e3654e419
BLAKE2b-256 da1bef2c708ae29cfbc019560f124385d643ce30dd60ade7695a23e384994e43

See more details on using hashes here.

File details

Details for the file fastavro-0.22.0-cp27-cp27m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: fastavro-0.22.0-cp27-cp27m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 376.7 kB
  • Tags: CPython 2.7m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for fastavro-0.22.0-cp27-cp27m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 c37fb8b23a860ce4e69e4c2e2e52ee545d42888cf0db49681e19f5688662e9cb
MD5 6023844ff2f3b257b7768524437d8a1d
BLAKE2b-256 94506ef3e486eb7b9886ed7dafb05c562309bb4ba37ed9e02899f4267d59725d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page