MCPcopy Create free account
hub / github.com/pgadmin-org/pgadmin4 / generate_security_report_stream

Function generate_security_report_stream

web/pgadmin/llm/__init__.py:1117–1162  ·  view source on GitHub ↗

Stream a security report for the specified server via SSE.

(sid)

Source from the content-addressed store, hash-verified

1115@pgCSRFProtect.exempt
1116@pga_login_required
1117def generate_security_report_stream(sid):
1118 """
1119 Stream a security report for the specified server via SSE.
1120 """
1121 from pgadmin.llm.utils import is_llm_enabled
1122 from pgadmin.llm.reports.generator import (
1123 generate_report_streaming, create_sse_response
1124 )
1125 from pgadmin.utils.driver import get_driver
1126
1127 if not is_llm_enabled():
1128 return make_json_response(
1129 success=0,
1130 errormsg=gettext(
1131 'LLM is not configured. Please configure an LLM provider '
1132 'in Preferences > AI.'
1133 )
1134 )
1135
1136 try:
1137 driver = get_driver(config.PG_DEFAULT_DRIVER)
1138 manager = driver.connection_manager(sid)
1139 conn = manager.connection()
1140
1141 if not conn.connected():
1142 return make_json_response(
1143 success=0,
1144 errormsg=gettext('Server is not connected.')
1145 )
1146
1147 context = {}
1148 generator = generate_report_streaming(
1149 report_type='security',
1150 scope='server',
1151 conn=conn,
1152 manager=manager,
1153 context=context
1154 )
1155
1156 return create_sse_response(generator)
1157
1158 except Exception as e:
1159 return make_json_response(
1160 success=0,
1161 errormsg=str(e)
1162 )
1163
1164
1165def _gather_security_config(conn, manager):

Callers

nothing calls this directly

Calls 9

is_llm_enabledFunction · 0.90
make_json_responseFunction · 0.90
get_driverFunction · 0.90
create_sse_responseFunction · 0.90
gettextFunction · 0.85
connection_managerMethod · 0.80
connectionMethod · 0.80
connectedMethod · 0.45

Tested by

no test coverage detected