Easily manage data storage and logging across repos
Project description
SecureData
A library that allows for easy reading/writing of settings across repositories, as well as logging.
Author
Disclaimers
- This is an early stage project. There are still some things to tweak, and although I've done quite a bit of testing, I can't guarantee everything that works on my machine will work on yours. Always back up your data to multiple places to avoid data loss.
- If you find any issues, please contact me... or get your hands dirty and raise a PR!
Structure
- Data is stored in
settings.json
(in~/securedata
by default) - Logs are written to
~/securedata/log
by default
Installation
python3 -m pip install securedata
Configuration
- To choose where
settings.json
is stored, use
securedata config
- To choose where logs will be stored, edit
settings.json
and setpath_log
to the full path to the log folder.
Examples
setItem
from securedata import securedata
securedata.setItem("employee", "Tyler", "salary", 7.25)
results in this structure in settings.json:
{
"employee": {
"Tyler": {
"salary": 7.25
}
}
}
getItem
from securedata import securedata
print(securedata.getItem("employee", "Tyler", "salary")) # given example settings.json above
> python3 test.py
> 7.25
log
from securedata import securedata
# writes to a file named LOG_DAILY YYYY-MM-DD in the default log folder (or securedata.getItem('path_log')) inside a YYYY-MM-DD folder
securedata.log("Dear Diary...")
securedata.log("This function hit a breakpoint", level="debug")
securedata.log("Looks like the server is on fire", level="critical")
securedata.log("This is fine", level="info")
# writes to a file named LOG_TEMPERATURE
securedata.log("30", logName="LOG_TEMPERATURE")
# writes to a file named LOG_TEMPERATURE in /home/pi/weather
securedata.log("30", logName="LOG_TEMPERATURE", filePath="/home/pi/weather")
# format
# 2021-12-29 19:29:27,896 — INFO — 30
Dependencies
- Python >= 3.6
- Rclone
- optional, used to sync data to/from cloud providers
- support for customizing this with
securedata.config
in a future update
Project details
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
securedata-2022.1.9.2.tar.gz
(5.8 kB
view details)
Built Distribution
File details
Details for the file securedata-2022.1.9.2.tar.gz
.
File metadata
- Download URL: securedata-2022.1.9.2.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.8.0 tqdm/4.62.3 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd5747e088316c00f366f07092b851ffc0cc54973725a32585c9800bd8d23166 |
|
MD5 | 921e9fae527aef2bdc4b5b17b2eecd8b |
|
BLAKE2b-256 | ee65d55300ae9ab8055303fa5f687c62dc0d33cc460968218c21c783d1dcae7b |
File details
Details for the file securedata-2022.1.9.2-py3-none-any.whl
.
File metadata
- Download URL: securedata-2022.1.9.2-py3-none-any.whl
- Upload date:
- Size: 6.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.8.0 tqdm/4.62.3 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 249b164a14a3d9603e9d4ec3ce71f33545f852555b2f1cbdee1be086a9be00e4 |
|
MD5 | 27b7a84a0a526f6821b198c0602dd75b |
|
BLAKE2b-256 | 20d8f28421616af06d914193307d43fcef8cf6f20eeafde610df5e3f22c77238 |