{"id":21560860,"url":"https://github.com/thlucas1/smartinspectpython","last_synced_at":"2025-04-30T13:39:43.059Z","repository":{"id":204961743,"uuid":"713070015","full_name":"thlucas1/SmartInspectPython","owner":"thlucas1","description":"Provides Python code execution tracing and diagnostics support via the SmartInspect Console Viewer.","archived":false,"fork":false,"pushed_at":"2025-03-27T17:50:45.000Z","size":13212,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-30T13:39:19.929Z","etag":null,"topics":["debugging","developer-tools","logger","logging","smartinspect","tracing"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/smartinspectPython/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thlucas1.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-11-01T19:21:45.000Z","updated_at":"2025-03-27T17:50:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"6d080a7c-8278-44d6-afb5-a33a3cabcd9a","html_url":"https://github.com/thlucas1/SmartInspectPython","commit_stats":null,"previous_names":["thlucas1/smartinspectpython"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thlucas1%2FSmartInspectPython","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thlucas1%2FSmartInspectPython/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thlucas1%2FSmartInspectPython/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thlucas1%2FSmartInspectPython/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thlucas1","download_url":"https://codeload.github.com/thlucas1/SmartInspectPython/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251713215,"owners_count":21631503,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["debugging","developer-tools","logger","logging","smartinspect","tracing"],"created_at":"2024-11-24T09:17:37.535Z","updated_at":"2025-04-30T13:39:43.009Z","avatar_url":"https://github.com/thlucas1.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 class=\"modulename\"\u003e\nSmartInspect Python3 Library\n\u003c/h1\u003e\n\n# Overview\nThis API provides Python code execution tracing and diagnostics support via the SmartInspect library.\nMore information on SmartInspect can be found here: \u003ca href=\"https://code-partners.com/offerings/smartinspect/\" target=\"_blank\"\u003ehttps://code-partners.com/offerings/smartinspect/\u003c/a\u003e\n\nWarning: Enabling diagnostics tracing could significantly impact application performance, depending on the logging level.\nFor example, a DEBUG logging level will generate a significant amount of trace data compared to an ERROR logging level.\n\nDiagnostic data can be captured in various ways: Real-Time Console, File, Memory, or Text.  Diagnostic data is buffered in a message list, and sent by a separate worker thread.  This approach ensures that performance impact of the diagnosed application is minimal while diagnostics are enabled.\n          \nDiagnostics tracing options can be set via an application configuration settings file.\n\nThe Real-Time Console method of sending diagnostic data is the ideal way to diagnose applications that utilize services, such as ASP.NET or Windows Services.  For real-time monitoring, diagnostics trace data is sent from your application to the SmartInspect Console viewer over the TCP/IP network.  The SmartInspect Console can be started on the same machine where your application is running, or on a different machine that is accessible via the TCP/IP network.\n\n# Documentation\n* Documentation is located in the package library under the 'docs' folder; use the index.html as your starting point.  \n* You can also view the latest documentation online at \u003ca href=\"https://smartinspectpython.readthedocs.io/en/latest/__init__.html\" target=\"_blank\"\u003ereadthedocs.io\u003c/a\u003e.\n\n# Requirements\n* Python 3.4 or greater (not tested with Python 2).\n* pycryptodome package - used for log file encryption support.\n* pywin32 package - for named-pipe support (Windows platform only - use `pip install pywin32` to install manually).\n* watchdog package - for detection of changes to smartinspect.cfg file settings.\n\n# Dependencies\n* SmartInspect Redistributable Console, Version 3.3+.\n\n    The Console Viewer is required to view SmartInspect Log (.sil) formatted files, as well capture packets via the SITcpProtocol or SIPipeProtocol connections. \n    The Console Viewer (aka Redistributable Console) can be downloaded here: \u003ca href=\"https://code-partners.com/offerings/smartinspect/releases/\" target=\"_blank\"\u003ehttps://code-partners.com/offerings/smartinspect/releases/\u003c/a\u003e\n\n# Quick-Start Sample Code\n\nThe following code snippets will get you started with establishing a connection to a logging Console or file.\nPlease refer to the `smartinspectpython.sisession.SISession` class for all of the various \"Logx\" methods to log data.\n\n\u003cem\u003eExample 1 - Logging via tcp to a running SmartInspect Console on localhost\u003c/em\u003e\n``` python\n# our package imports.\nfrom smartinspectpython.siauto import *\n\n# set smartinspect connections, and enable logging.\nSIAuto.Si.Connections = \"tcp(host=localhost,port=4228,timeout=5000)\"\nSIAuto.Si.Enabled = True    # enable logging\n\n# get smartinspect logger reference.\n_logsi:SISession = SIAuto.Main\n_logsi.Level = SILevel.Debug   # set Message level logging\n\n# log some test messages.\n_logsi.LogSystem(SILevel.Debug, \"System Information on application startup\")\n_logsi.LogMessage(\"Hello World has started\")\n```\n\u003cbr/\u003e\n\n\u003cem\u003eExample 2 - Logging to rotating hourly log files in SmartInspect Console format\u003c/em\u003e\n``` python\n# our package imports.\nfrom smartinspectpython.siauto import *\n\n# set smartinspect connections, and enable logging.\n# this will keep 24 log files, that rotate every hour.\nSIAuto.Si.Connections = \"file(filename=\\\".\\\\logfiles\\\\AppLog.sil\\\", rotate=hourly, maxparts=24, append=true)\"\nSIAuto.Si.Enabled = True    # enable logging\n\n# get smartinspect logger reference.\n_logsi:SISession = SIAuto.Main\n_logsi.Level = SILevel.Debug   # set Message level logging\n\n# log some test messages.\n_logsi.LogSystem(SILevel.Debug, \"System Information on application startup\")\n_logsi.LogMessage(\"Hello World has started\")\n```\n\u003cbr/\u003e\n\n\u003cem\u003eExample 3 - Logging to rotating hourly log files in Plain Text format\u003c/em\u003e\n``` python\n# our package imports.\nfrom smartinspectpython.siauto import *\n\n# set smartinspect connections, and enable logging.\n# this will keep 24 log files, that rotate every hour.\nSIAuto.Si.Connections = \"text(filename=\\\".\\\\logfiles\\\\AppLog.txt\\\", rotate=hourly, maxparts=24, append=true)\"\nSIAuto.Si.Enabled = True    # enable logging\n\n# get smartinspect logger reference.\n_logsi:SISession = SIAuto.Main\n_logsi.Level = SILevel.Debug   # set Message level logging\n\n# log some test messages.\n_logsi.LogSystem(SILevel.Debug, \"System Information on application startup\")\n_logsi.LogMessage(\"Hello World has started\")\n```\n\n# Licensing\nThis project is licensed under the terms of the MIT End-User License Agreement (EULA) license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthlucas1%2Fsmartinspectpython","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthlucas1%2Fsmartinspectpython","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthlucas1%2Fsmartinspectpython/lists"}