/opt/alt/python37/lib/python3.7/site-packages/ssa/__pycache__
Edit: /opt/alt/python37/lib/python3.7/site-packages/ssa/__pycache__/db.cpython-37.pyc (3705B)
B
dZ
@ s d dl Z d dlZd dlZd dlmZmZ d dlmZmZmZm Z m
Z
mZmZm
Z
d dlmZ d dlmZ d dlmZ dZdZe ZG d d
d
eZdd Zd
d Zdd Zdd Zdd ZdddZejedddZdS ) N)datetime timedelta)ColumnBooleanDateTimeIntegerString
create_engineeventfunc)declarative_base) Inspector)Sessionz/var/lve/ssa.db c @ s e Zd ZdZdZeeddZeedddZ eedddZ
eeddZeeddZee
ddZee
ddZeeddZeeddZee
ddZeedde d Zeedde e d
ZdS )
RequestResultay
Describes processed request stored in database file.
E.g.
{
"timestamp": "1650008727",
"url": "http://mydomain.com/index.php",
"duration": 162077,
"hitting_limits": false,
"throttled_time": 0,
"io_throttled_time": 0,
"wordpress": true
}
Note: created_at, updated_at is saved in local TZ format
Z
scrape_resultT)Zprimary_keyF)indexnullable)r )timezone)server_default)Zonupdater N)__name__
__module____qualname____doc__Z
__tablename__r r idr domainpath timestampdurationr Zis_slow_requestZhitting_limitsZthrottled_timeZio_throttled_timeZ wordpressr r now
created_atZ
updated_at r r 7/opt/alt/python37/lib/python3.7/site-packages/ssa/db.pyr " s r c C sD t ttd }t| }|ttj|k W dQ R X dS )zD
Removes outdated records from database, saving disk space.
)daysN)
r todayr RETENTION_TIME_DAYS
session_scopequeryr filterr delete)engine
n_days_agosessionr r r! cleanup_old_dataG s
r, c C s t | stj| d S )N)
is_db_presentBasemetadataZ
create_all)r) r r r! create_db_if_not_existR s r0 c C s8 t jtsdS t| }dd | D }t|dkS )NFc S s g | ]}|qS r r ).0tabler r r!
[ s z!is_db_present..r )osr isfileSSA_DBr
Zfrom_engineZget_table_nameslen)r) Zdatabase_inspectionZtablesr r r! r- W s
r- c C s | d d S )NzPRAGMA journal_mode = WAL)execute)Z dbapi_conZ
con_recordr r r! setup_wal_mode_ s r9 c sL dt | r d fdd}td|dd}t|dt t| |S ) Nzfile:z?mode=roc s t j ddS )NT)uri)sqlite3connectr )connection_stringr r! g z!_setup_database..zsqlite:////F)creatorechor<