0% found this document useful (0 votes)
19 views9 pages

SQL Monitoring

This document provides an overview of an SQL monitoring tool that monitors SQL server performance. It discusses the tool's design, architecture, core logic requirements, and parameters that will be monitored such as processor usage, memory usage, disk usage, network traffic, user connections, database activity, and more. The tool will use an agent-server architecture with an OpenFire XMPP server, Smack client APIs, and a web panel for viewing monitoring data and configuring settings. It will monitor SQL servers, notify of issues, store data in the cloud, and provide APIs for the web interface.

Uploaded by

itjob65
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views9 pages

SQL Monitoring

This document provides an overview of an SQL monitoring tool that monitors SQL server performance. It discusses the tool's design, architecture, core logic requirements, and parameters that will be monitored such as processor usage, memory usage, disk usage, network traffic, user connections, database activity, and more. The tool will use an agent-server architecture with an OpenFire XMPP server, Smack client APIs, and a web panel for viewing monitoring data and configuring settings. It will monitor SQL servers, notify of issues, store data in the cloud, and provide APIs for the web interface.

Uploaded by

itjob65
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

SQL Monitoring tool

Table of contents
Tool Purpose..................................................................................................................................2
Monitoring tool design...............................................................................................................2
Core logic requirements.................................................................................................................................................................... 2

General architecture...................................................................................................................3
Parameters to be monitored:.........................................................................................................................................................3
Page 2

Tool Purpose
Monitoring tool is SQL server (2005 or sql 2008) monitoring solution that monitors SQL server performance issues.
Ex: current activities, blocks, disks/dbs/instances performance counters, waits, space usage, query performance

Monitoring tool design

We are using XMPP for the implementation of this project. There are 3 parts for this
project.

1. Server side we are using Open Fire (XMPP server component)

2. Client side we are using Smack APIs ( XMPP Client). This client will be installed
on SQL server.

3. Web panel:

We panes has the following features:

http://login.vezinet.com

The following pages to be developed

1. Login page

2. Define server
Page 3

Features:

3. Functionality:

• Dashboard functionality, Server, ERP Application administration

• User management, Intuitive server grouping

• User administration

Core logic requirements


This module should be implemented as java application and contains set of methods
responsible for:

n Receiving and processing data from connectors.


n Monitor sensors thresholds and notify system administrators about critical or
warning values
n Store and retrieve data from agent to cloud
n Monitoring application settings management
n Providing JSON web services for Web UI to display monitoring values

Page 4

General architecture

General architecture displayed on Figure 1.

Op

Openfire Server

AGENT Web Pages

Figure 1. application blocks


Page 5
Page 6

Parameters to be monitored:
n Processor\% Processor Time – refers to the average percentage of processor time
occupied. It is a main indicator to consider when deciding whether the CPU power
of the IIS server is enough. It is recommended for this counter to remain below
85% for the system to be considered healthy.
n System\Processor Queue Length – the processor queue is being filled up with
threads when the server’s processors are busy servicing other threads at the
moment. If this counter is usually above 2 and the % Processor Time remains on
high levels, then the processors are considered a bottleneck in the system.
n Memory\Available Mbytes – refers to the amount of physical memory (measured
in MBytes) on the system that can be used by new processes. If the free memory is
equal or greater than 50%, the system is considered healthy. A value of 25% free
memory indicates a potential problem. If the memory is below 10%, the condition
has to be examined carefully and precautions have to be taken. If the free memory
is less than 5%, the performance of the system is negatively impacted.
n Memory\Pages/sec – refers to the amount of read and write requests from
memory to disk. If this value remains high and the Available Mbytes are less than
10%, then the Memory subsystem is considered a bottleneck. Less than 500
Pages/sec are considered normal, more than 500 may affect system’s
performance.
n PhysicalDisk\% Disk Time – refers to the percentage of time the disk was
occupied. It takes into account both read and write requests sent to the disk.
n Network Interface\Bytes Total/sec – refers to the total amount of bytes – both
sent and received – over the network. If the value of this counter is usually greater
than 80%, then maybe another or faster network card should be installed on the
server.
n User Connections – number of user connections. Because each user connection
consumes some memory, configuring overly high numbers of user connections
could affect throughput. Set user connections to the maximum expected number
of concurrent users.
n Logins – total number of logins started per second.
n Logouts – total number of logout operations started per second.
n Full Scans – number of unrestricted full scans per second. These can be either
base-table or full-index scans.
n Page Splits – number of page splits per second that occur as the result of
overflowing index pages.
n Table Lock Escalations – number of times locks on a table were escalated.
Page 7

n Buffer Cache Hit Ratio – percentage of pages found in the buffer cache without
having to read from disk. The ratio is the total number of cache hits divided by the
total number of cache lookups since an instance of SQL Server was started. After
a long period of time, the ratio moves very little. Because reading from the cache is
much less expensive than reading from disk, you want this ratio to be high.
Generally, you can increase the buffer cache hit ratio by increasing the amount of
memory available to SQL Server.
n Database Pages – number of pages in the buffer pool with database content.
n Stolen Pages – number of pages used for miscellaneous server purposes
(including procedure cache).
n Page Life Expectancy – number of seconds a page will stay in the buffer pool
without references.
n Connection Memory (KB) – total amount of dynamic memory the server is using
for maintaining connections.
n Optimizer Memory (KB) – total amount of dynamic memory the server is using
for query optimization.
n Total Server Memory (KB) – total amount of dynamic memory (in kilobytes) that
the server is using currently.
n Target Server Memory (KB) – total amount of dynamic memory the server can
consume.
n SQL Cache Memory (KB) – total amount of dynamic memory the server is using
for the dynamic SQL cache.
n Lock Requests – number of new locks and lock conversions per second requested
from the lock manager.
n Deadlocks – number of lock requests per second that resulted in a deadlock.
n Average Wait Time – average amount of wait time (in milliseconds) for each lock
request that resulted in a wait.
n Batch Requests – number of Transact-SQL command batches received per
second. This statistic is affected by all constraints (such as I/O, number of users,
cache size, complexity of requests, and so on). High batch requests mean good
throughput.
SQL Compilations – number of SQL compilations per second. Indicates the number
of times the compile code path is entered. Includes compiles due to recompiles.
After SQL Server user activity is stable, this value reaches a steady state.
SQL Re-Compilations – number of SQL recompiles per second. Counts the number
of times recompiles are triggered. In general, you want the recompiles to be low.
Page 8

WMI Hardware counters set provides common values for most important hardware
parameters such as CPU, DISK RAM

Provides information about system health and background services statuses base
on the informational messages stored in the system logs.

We do believe it's a very easy project.


Mainly it's based on database collection for specific type of customers.
Requirements : Need to be installed on any windows operating system with
capability of saving data over cloud, mainly can be a web-based software with pre-
installed interface.
Main page is divided into two options :
1- search the database
2- new customer

Search the database :

Ability to look up customer by phone number , name , last name or nick name

New customer :

A specific layout design that I can provide it later to be graphic designed as


requested but mainly it's base on different tabs .

Tab1
The database is mainly filled from an ID or passport and it contains information of
ID or passport number , name , last name , dob, phone number , address ,
membership number , plus a copy of the ID/Passport in file, with the ability of
copying all the ID information in a specific format in a single button.
We would like to know if it's possible to make data auto filled from passport
scanning.

Tab2
Couple of more data information filled from food requirements to other specific
information that we can provide it later .
Page 9

Tab3
Photocopy of more required documents with filling manually or automatically date
of each signed document and date of expiration and linking each document to the
first tab with red or green light ( what we mean by that is , example a document 1
was scanned , so tab 3 will have a picture or document 1 and the user will fill that
document 1 was signed on 1-May-2015 and expiry 30-May-2015. On the first tab ,
we need an automatic appearance in a small box of the name of the document
available , here document 1 and next to it a green button or a red one to identify if
the document is valid or expired.)

Tab4
More information to be filled

Tab5
Credit cards and payments information that can be filled and never be shown
unless a specific password is inserted.

More simple requirements to be discussed later but it's not that major , example a
admin password where he can get all logs of user from new customers to searched
customers , which user added one , edited a current one or accessed to payments
details of a customer . And more security, with blocking the ability of copying the
database on excel sheet unless the admin password was entered .

The points above are mainly all major ones .


Definitely our company will have full ownership of the application and a contract
will be signed to clear this point and to clarify that your company have no rights
to give source code of this app , sell it to anyone or create a competitor application
that fulfill the same purpose of it.

Let us know if you the capability of exciting such a software to proceed .

You might also like