Storage costs are typically based on the amount of data stored in your database. You can monitor this using Azure's built-in metrics and then allocate costs based on each client's data usage.
Compute costs in Azure SQL Database are primarily based on the Database Transaction Unit or vCore model you are using. These models determine the amount of CPU, memory, and I/O resources allocated to your database.
You can use Azure Query Performance Insight tool to monitor and analyze the performance of individual queries.
Use DMVs like sys.dm_exec_query_stats
if you want to ge detailed information about query execution, including CPU time, logical reads, and elapsed time.
Also, Azure provides metrics such as CPU percentage, Data IO percentage, and Log IO percentage. These can be used to estimate the compute usage of your queries.
To control or restrict access from a specific IP address, you can use :
- Firewall Rules
- Virtual Network Rules
- Threat Detection