Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- table
- SPC
- NPM
- tomcat
- Android
- plugin
- 공정능력
- es6
- window
- hadoop
- Kotlin
- mybatis
- Sqoop
- Python
- JavaScript
- 보조정렬
- Eclipse
- MSSQL
- Express
- GIT
- IntelliJ
- SQL
- R
- vaadin
- Java
- mapreduce
- SSL
- xPlatform
- react
- Spring
Archives
- Today
- Total
DBILITY
mssql Server log 확인하기 본문
반응형
현재 로그에서 db user의 접속통계용으로 사용한다.
master db에 실체 테이블을 생성 후 입력하고 조회하는 것이다.
인덱스가 없고 통계정보가 생성되지 않은 상태에서 TEXT 조회니 느릴 수 있다.
USE MASTER
GO
SET NOCOUNT ON
IF NOT EXISTS (SELECT * FROM sysobjects WHERE name='DB_CONNECT_LOGS' and xtype='U')
BEGIN
CREATE TABLE DB_CONNECT_LOGS (
LOG_DATE DATETIME, PROCESS_INFO VARCHAR(1000), LOG_TEXT VARCHAR(MAX)
)
END
ELSE
BEGIN
TRUNCATE TABLE DB_CONNECT_LOGS
END
GO
INSERT DB_CONNECT_LOGS EXEC sp_readerrorlog 0, 1, '', '';
/*
총 4개의 파라메타가 있는데 각 파라메타의 의미는 다음과 같습니다.
@p1 : 0 = 현재 로그, 1 = 보관된 첫번째 로그, 2 = 보관된 두번째 로그...
@p2 : 1 or Null = Error Log, 2 = SQL Agent Log
@p3 and @p4 : Search 키워드, @p3과 @p4가 and 조건
*/
SELECT A.계정,A.접속경로,A.로그인여부, COUNT(*) AS '로그개수'
FROM
(
SELECT A.*
,SUBSTRING(TEXT,CHARINDEX('[', TEXT),50) AS '접속경로'
,CASE WHEN LEFT(TEXT,10) ='LOGIN SUCC' THEN 'LOGIN SUCCEEDED'
ELSE LEFT(TEXT,10)
END AS '로그인여부'
,SUBSTRING(TEXT,(CHARINDEX('"', TEXT)+1), ((CHARINDEX('"', TEXT,CHARINDEX('"', TEXT)+1))-(CHARINDEX('"', TEXT)+1)) ) AS '계정'
FROM (
SELECT LOG_DATE, PROCESS_INFO
,REPLACE(LOG_TEXT, CHAR(39) , '"') AS TEXT
FROM DB_CONNECT_LOGS
WHERE LOG_DATE >='2022-07-22 01:01:01.001' AND LOG_DATE <='2022-08-27 23:59:59.999'
AND PROCESS_INFO = 'LOGON'
AND LEFT(LOG_TEXT,5) = 'LOGIN'
--AND LOG_DATE NOT IN ('2020-12-15 13:11:58.070') --SUBSTRING 에러시 "계정정보 없음"
) A
WHERE 1=1
) A
GROUP BY A.계정,A.접속경로,A.로그인여부
;
이거 보고 클릭 한번~ 삼대가 재수있을지어다!😎
누르고 복권을 사라! 당첨되면 감사 댓글 부탁~
반응형
'database > mssql' 카테고리의 다른 글
mssql get weekday ( mssql 요일 ) (0) | 2022.09.26 |
---|---|
mssql backup and different db restoration ( 백업 및 다른 db로 복원 ) (0) | 2022.09.14 |
mssql table column add after backup insert identity data (0) | 2022.08.25 |
sql server unpivot string separate characters to row (0) | 2021.09.29 |
mssql lock확인 (0) | 2021.07.05 |
Comments