Есть ли способ получить информацию о связанном запросе сервера? - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь запросить информацию на связанном сервере. Код работает нормально при запуске на машине, но не при подключении через связанный сервер:

SELECT
    r.session_id,
    r.start_time,
    r.total_elapsed_time,
    s.login_name,
    c.client_net_address,
    s.host_name,
    s.program_name,
    st.text
FROM
    [linked_server].[master].sys.dm_exec_requests r
INNER JOIN
    [linked_server].[master].sys.dm_exec_sessions s
ON
    r.session_id = s.session_id
LEFT JOIN
    [linked_server].[master].sys.dm_exec_connections c
ON
    r.session_id = c.session_id
OUTER APPLY
    [linked_server].[master].sys.dm_exec_sql_text(r.sql_handle) st where r.session_id  > 50

Я получаю ошибку:

Remote table-valued function calls are not allowed

Цель состоит в том, чтобы сохранить отслеживание запросов, проходящих через комплекс серверов в 1 центральную станцию, чтобы мы могли отслеживать воздействия (в основном создавая собственный инструмент мониторинга серверов). Нужно ли изменить настройку на связанном сервере?

1 Ответ

0 голосов
/ 04 мая 2020

Согласно этому вопросу , вы можете либо попробовать добавить WITH (NOLOCK), либо использовать OPENQUERY.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...