31 lines
983 B
Python
31 lines
983 B
Python
import paramiko
|
|
|
|
c = paramiko.SSHClient()
|
|
c.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
|
c.connect('140.44.4.11', username='root', key_filename=r'C:\Users\Snarf\.ssh\id_ed25519_snarfnet', timeout=10)
|
|
|
|
py_script = """import sqlite3
|
|
conn = sqlite3.connect('/tmp/grafana_real.db')
|
|
cur = conn.cursor()
|
|
tables = [t[0] for t in cur.execute("SELECT name FROM sqlite_master WHERE type='table';").fetchall()]
|
|
for t in tables:
|
|
if 'source' in t or 'dash' in t or 'user' in t:
|
|
print('Matching table:', t)
|
|
|
|
print('--- data_source content ---')
|
|
for row in cur.execute('SELECT * FROM data_source').fetchall():
|
|
print(row)
|
|
|
|
print('--- dashboard content ---')
|
|
for row in cur.execute('SELECT id, title, slug, uid FROM dashboard').fetchall():
|
|
print(row)
|
|
"""
|
|
|
|
stdin, stdout, stderr = c.exec_command("cat > /tmp/inspect_grafana.py && python3 /tmp/inspect_grafana.py")
|
|
stdin.write(py_script)
|
|
stdin.close()
|
|
print(stdout.read().decode())
|
|
print(stderr.read().decode())
|
|
|
|
c.close()
|