Иногда довольно часто нужно импортировать кучу логов NGINX в MS SQL Server. Есть суперидея как это сделать:
- Качаем логи к себе на комп в дружественную среду Windows
- Нужно локально установленный MS SQL сервер, на него-то мы и будем грузить логи. Создаем базу с именем nginxanal и таблицу в ней. Вот SQL код для создания таблицы:
CREATE TABLE [dbo].[nginxlog]( [md5] [nvarchar](32) NOT NULL, [IP] [nvarchar](150) NULL, [Dt1] [datetime2](7) NULL, [URL] [nvarchar](max) NULL, [RespCode] [int] NULL, [Len] [int] NULL, [Ref] [nvarchar](max) NULL, [UA] [nvarchar](max) NULL, [Meth] [nvarchar](10) NULL, [Ver] [nvarchar](10) NULL, CONSTRAINT [PK_Mp3red] PRIMARY KEY CLUSTERED ( [md5] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
- Запускаем прогу, внизу страницы исходники, выбираем файлы для импорта и ждем:
Скачать исходники тут: NginxImport.zip, скомпиленная версия тут: NginxImport.binary.zip. Да кстати в исходниках можно поменять строку подключения — имя базы данных для импорта например.
Результат:
Мне это нужно было для анализа и поиска ботов, которых потом надо забанить.
Добавить комментарий