Skip to main content

PyWavelets, wavelet transform module

Project description

Service

Master branch

GitHub

Build Status

Appveyor

Appveyor Status

Read the Docs

Documentation Status

PyWavelets

What is PyWavelets

PyWavelets is a free Open Source library for wavelet transforms in Python. Wavelets are mathematical basis functions that are localized in both time and frequency. Wavelet transforms are time-frequency transforms employing wavelets. They are similar to Fourier transforms, the difference being that Fourier transforms are localized only in frequency instead of in time and frequency.

The main features of PyWavelets are:

  • 1D, 2D and nD Forward and Inverse Discrete Wavelet Transform (DWT and IDWT)

  • 1D, 2D and nD Multilevel DWT and IDWT

  • 1D and 2D Stationary Wavelet Transform (Undecimated Wavelet Transform)

  • 1D and 2D Wavelet Packet decomposition and reconstruction

  • 1D Continuous Wavelet Transform

  • Computing Approximations of wavelet and scaling functions

  • Over 100 built-in wavelet filters and support for custom wavelets

  • Single and double precision calculations

  • Real and complex calculations

  • Results compatible with Matlab Wavelet Toolbox (TM)

Documentation

Documentation with detailed examples and links to more resources is available online at http://pywavelets.readthedocs.org.

For more usage examples see the demo directory in the source package.

Installation

PyWavelets supports Python >=3.7, and is only dependent on NumPy (supported versions are currently >= 1.14.6). To pass all of the tests, Matplotlib is also required. SciPy is also an optional dependency. When present, FFT-based continuous wavelet transforms will use FFTs from SciPy rather than NumPy.

There are binary wheels for Intel Linux, Windows and macOS / OSX on PyPi. If you are on one of these platforms, you should get a binary (precompiled) installation with:

pip install PyWavelets

Users of the Anaconda Python distribution may wish to obtain pre-built Windows, Intel Linux or macOS / OSX binaries from the conda-forge channel. This can be done via:

conda install -c conda-forge pywavelets

Several Linux distributions have their own packages for PyWavelets, but these tend to be moderately out of date. Query your Linux package manager tool for python-pywavelets, python-wavelets, python-pywt or a similar package name.

If you want or need to install from source, you will need a working C compiler (any common one will work) and a recent version of Cython. Navigate to the PyWavelets source code directory (containing pyproject.toml) and type:

pip install .

The most recent development version can be found on GitHub at https://github.com/PyWavelets/pywt.

The latest release, including source and binary packages for Intel Linux, macOS and Windows, is available for download from the Python Package Index. You can find source releases at the Releases Page.

State of development & Contributing

PyWavelets started in 2006 as an academic project for a master thesis on Analysis and Classification of Medical Signals using Wavelet Transforms and was maintained until 2012 by its original developer. In 2013 maintenance was taken over in a new repo) by a larger development team - a move supported by the original developer. The repo move doesn’t mean that this is a fork - the package continues to be developed under the name “PyWavelets”, and released on PyPi and Github (see this issue for the discussion where that was decided).

All contributions including bug reports, bug fixes, new feature implementations and documentation improvements are welcome. Moreover, developers with an interest in PyWavelets are very welcome to join the development team!

As of 2019, PyWavelets development is supported in part by Tidelift. Help support PyWavelets with the Tidelift Subscription

Contact

Use GitHub Issues or the mailing list to post your comments or questions.

Report a security vulnerability: https://tidelift.com/security

License

PyWavelets is a free Open Source software released under the MIT license.

If you wish to cite PyWavelets in a publication, please use the following JOSS publication.

http://joss.theoj.org/papers/10.21105/joss.01237/status.svg

Specific releases can also be cited via Zenodo. The DOI below will correspond to the most recent release. DOIs for past versions can be found by following the link in the badge below to Zenodo:

https://zenodo.org/badge/DOI/10.5281/zenodo.1407171.svg

Project details


Download files

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

Source Distribution

pywavelets-1.5.0.tar.gz (3.9 MB view details)

Uploaded Source

Built Distributions

pywavelets-1.5.0-cp312-cp312-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.12 Windows x86-64

pywavelets-1.5.0-cp312-cp312-win32.whl (4.2 MB view details)

Uploaded CPython 3.12 Windows x86

pywavelets-1.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

pywavelets-1.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.4 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

pywavelets-1.5.0-cp312-cp312-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

pywavelets-1.5.0-cp312-cp312-macosx_10_13_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.12 macOS 10.13+ x86-64

pywavelets-1.5.0-cp311-cp311-win_amd64.whl (4.3 MB view details)

Uploaded CPython 3.11 Windows x86-64

pywavelets-1.5.0-cp311-cp311-win32.whl (4.2 MB view details)

Uploaded CPython 3.11 Windows x86

pywavelets-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

pywavelets-1.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

pywavelets-1.5.0-cp311-cp311-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

pywavelets-1.5.0-cp311-cp311-macosx_10_13_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.11 macOS 10.13+ x86-64

pywavelets-1.5.0-cp310-cp310-win_amd64.whl (4.3 MB view details)

Uploaded CPython 3.10 Windows x86-64

pywavelets-1.5.0-cp310-cp310-win32.whl (4.2 MB view details)

Uploaded CPython 3.10 Windows x86

pywavelets-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

pywavelets-1.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

pywavelets-1.5.0-cp310-cp310-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

pywavelets-1.5.0-cp310-cp310-macosx_10_13_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.10 macOS 10.13+ x86-64

pywavelets-1.5.0-cp39-cp39-win_amd64.whl (4.3 MB view details)

Uploaded CPython 3.9 Windows x86-64

pywavelets-1.5.0-cp39-cp39-win32.whl (4.2 MB view details)

Uploaded CPython 3.9 Windows x86

pywavelets-1.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pywavelets-1.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

pywavelets-1.5.0-cp39-cp39-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

pywavelets-1.5.0-cp39-cp39-macosx_10_13_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.9 macOS 10.13+ x86-64

File details

Details for the file pywavelets-1.5.0.tar.gz.

File metadata

  • Download URL: pywavelets-1.5.0.tar.gz
  • Upload date:
  • Size: 3.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for pywavelets-1.5.0.tar.gz
Algorithm Hash digest
SHA256 d9e25c7cabef7ccd53f5fead26ab22152fe4cb937bad7411b5d506e2b5de38f6
MD5 6af08b6f004d04d9ee3464a1ee7b7f39
BLAKE2b-256 eececfce0d615746d9b9ccc698401599183d6edb6d1bb0ae234bd717a840711d

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 7115439f0dff291b8f81b69caff1a240695566f17c483752a49de9576c7332a4
MD5 a915e5520596d7a2eb6e60c2a34d11d0
BLAKE2b-256 37cc3aa33e99e1031227749711177d916ca3a4a1fa1b63d830776bc49991f7ff

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp312-cp312-win32.whl.

File metadata

  • Download URL: pywavelets-1.5.0-cp312-cp312-win32.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for pywavelets-1.5.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 eb123f01315c0fa54e25780f3b0ce0b096bab35f6c11cacbcd4ac9915f26508a
MD5 bbe12342b483a442517fb426bcd828a8
BLAKE2b-256 be62be65c92798269e8d89ffb87c539eda3f2e16a4d4ee4b7e4e4a10e1f814ca

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 322995ea0a57c96086782f0391934f9f00123087a62ad7bef0e778491f121931
MD5 9d8e3abc567e5ddbe9ef2b5f1458fc68
BLAKE2b-256 b2e178b783f360bd579e87abb2c58f675653c9072538f5071a6ff11f1830071a

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d7dc392c3d3d5415b25b5c6ab3b77bb2ac2b7ff6c4d2fb81bd4633b9ac4b66f3
MD5 c90f3ea33a681184c34ac8ed10bffdde
BLAKE2b-256 4ea84b00cc6b76a85554c6112057bb29ccc37f1a6e4d565029f547c0c2fcffe6

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7da6c2acd7253e5d45f371bcd6c0f34d70b2f82694420afb0631130bc89e3288
MD5 d616e19aa324e56e294f8061a90b00ae
BLAKE2b-256 76e3c852c254b6d117fd788134154e45c6e2d0e824cc88c25b04204308db0fd4

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 f3eba7f581a723132beb213ce4b291a51306e3d2f79241a71063294a71cfa25d
MD5 60b1fa6db881a40f2ef746ba87a0f24b
BLAKE2b-256 df1774de34e3f8e514c8e31adbecdd135ba3519f28fe33f3f17aa08a87bc2a85

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 526e874ba79ee3779245737a3b8540defc7e92f6cec8f13258719cc1669f8b42
MD5 0d7ae9cf028a97a24f9ec62ee6082551
BLAKE2b-256 c1c6711bf969348053876b9d3f3826cd7a00d045178e1493ed844b630c876493

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp311-cp311-win32.whl.

File metadata

  • Download URL: pywavelets-1.5.0-cp311-cp311-win32.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for pywavelets-1.5.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 ca2e1faaea7f7ff42c771e180635e2fb165cf23c9805c4fe05f9458bcb97d093
MD5 e37beec1c01fa1a048988b71db0b5321
BLAKE2b-256 32e6ed02a9e995e8251c463d3ae9352b082336d7e4f5a55febb6e0beeb0c55dd

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9c3b10f1e1b08df4d918fa238ef5e5c51c111c4f6abdfecb19c26c540cbd8187
MD5 9327d0b1505659ded7416f70056f7285
BLAKE2b-256 79a3c13a5a01035e67def78aed4378993dcdce25650dab2e5117c16e1b7beccd

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 aa54e6c6f2d6953f5f962eb1d1de7f9fbc5bdf06141f58c05d0d87072a05b8be
MD5 81fd21c4f5079af0b1455bb330956e93
BLAKE2b-256 b2c7684e320f69876de0a248a5816c93eb35a62ba20c9ded7160c6ed7e182003

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4aca65696341aa64b98bf852d6768dbb345516710a2912419d68e9d484ddd6cd
MD5 b0264dda7675d16dd67b9888aa92f47c
BLAKE2b-256 28f82cb2ed4c4fa0273bd6ea93231afadda4b01ca3f797dcf43bbac324612962

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp311-cp311-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp311-cp311-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 2cae4a0151e443e915905c120435e69ad410b484ce8af4839220e43a494c7c53
MD5 7edbe4751a049e8f4282c9116a42147b
BLAKE2b-256 166f3966af28e12dab6475907ccae7f8e46df6f845a90029006bf96a32058ccc

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 67b65da9ef6380a48b8b53de6d8a4f83747b84b217a37944a4dcf3a53cdf308d
MD5 e9ea870e068c540a60986588ae84d79c
BLAKE2b-256 8e505863eba135e64ab164371b42fd455330d047988d7dc56fe6096d42e6aec0

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: pywavelets-1.5.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for pywavelets-1.5.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 51c8e9e081af40f61d194960db0f3dc0434bbd979dafcbbd6463134b3f482f37
MD5 591fa85e84df2be10db4804383d74976
BLAKE2b-256 b275ffd0d7c7ef0c9a1188b842a2dc9406776e7b1208d445b6d3908cd18c048c

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7a8b58eaf946fbee002cce460d32a0e932c6d9e158aad10eea984e7f26cda15e
MD5 bc57b17e38ea92149a2847784ae620ca
BLAKE2b-256 b9c27dffd331ac88c1776d8bba0fa77c73202a4ce79dc8d203fc99007b715866

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c857081c037552f174732d864b55d8db4845f5e2fdf0e7bfc2df675a417906f4
MD5 a9c70208542ee98113f376e213758875
BLAKE2b-256 f32b2a3b5ffd5d911a54ed69e8b178df293e48e66e0f8648677b2b1d8b4c6d31

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e045ee612de58e3175ae863c34072b6bf5b45b61264c1adbd75506ce31cedbb2
MD5 95bef298ad8a9b86e1b875fae19a8a5a
BLAKE2b-256 0f584774b343572146cc8a42db0cf7d2fd0b28fe9bd87ff033bbf93082946eaf

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp310-cp310-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp310-cp310-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 05723b35191ceb7d0c0bc2898a9ff391c0f20e8ed9b75d30211464872efcac95
MD5 4420768a1214819efcd470ddf3097d94
BLAKE2b-256 a0d8ffd93aff7e46d8e4bb4bfd51e96d2540c4c4a0bcf965933602176fa00975

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 91847ac1b658cf985a7f91ff638ba1d4a9a0544c5480ecbf8db427baf455725a
MD5 c01fed8564efee46283ebffae1aa1d02
BLAKE2b-256 1212ec2f306196477b1a4d770d681a12f73acf62ae23ac1ea9441c867fe186f1

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: pywavelets-1.5.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for pywavelets-1.5.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 f457d9faee286bd542c8f1921e38b8f5f54bc1949c0e349c8f1e9f8eb6d251a6
MD5 84a06d48c3d879e89a95a69500069f28
BLAKE2b-256 eb987d270caf0ce64172ccd1ec7515f96776bf5e2a3fa6eaae4b37d9eada864b

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 49aa6abf9ac941f47f7ea26a3c7dd5c8bfcf0e903dc5ec68ed105b52bfccd4e2
MD5 94f7c10a7175133790ee1f103f6e2850
BLAKE2b-256 a7581724d6362becfa71eded2dffe145e795786b13c3a66f6523f3aff1b3f3cf

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4d9763987b4a79917f007c1d5df0adc81adabbad3c7c0a368f4a7f12034816f3
MD5 4c26d96a0b55d33f183b502a5a068c12
BLAKE2b-256 c2e52ba4527a313750b628e95eaab05c36b8cf393f5e081d87ad1a90f87e6459

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 00d5c37775a2baa4e5e6e9df3f93e6fc700a76bd50acd3b234bb13467cc54b6b
MD5 f99e5878e767e5a3c305c118bd340d15
BLAKE2b-256 467683c185662c782b71807fe84fa92f74d0f930661457aaf180f7163b4d5e59

See more details on using hashes here.

File details

Details for the file pywavelets-1.5.0-cp39-cp39-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pywavelets-1.5.0-cp39-cp39-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 34d189aed544687500a2fba5b8970951a76f62f1d140cc5f9440d9b32b14b8f5
MD5 2cf2cf670b4f4b5b7176f321212e9f02
BLAKE2b-256 b0a8787508e85d579d0990b344410acdba4b6f45f19284404d2895cc8a35769d

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