Skip to content

Commit a1a81dd

Browse files
authored
Revise README for clarity and additional details
Updated the README to enhance clarity and provide additional context about the scenario, including infrastructure setup and monitoring instructions.
1 parent 2bde707 commit a1a81dd

1 file changed

Lines changed: 98 additions & 0 deletions

File tree

scenario1-high-decay/README.md

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
# Scenario 1: High-Load Writable Deployment with Aggressive Logging - Overview
2+
3+
Costa Rica
4+
5+
[![GitHub](https://badgen.net/badge/icon/github?icon=github&label)](https://github.com)
6+
[![GitHub](https://img.shields.io/badge/--181717?logo=github&logoColor=ffffff)](https://github.com/)
7+
[brown9804](https://github.com/brown9804)
8+
9+
Last updated: 2025-08-27
10+
11+
-----------------------------
12+
13+
> This scenario is intended to demonstrate rapid temporary file accumulation and disk degradation in Azure Functions.
14+
15+
16+
## Infrastructure Setup
17+
18+
- **App Service Plan (Windows)** - P1v3 tier for high-load testing
19+
- See: [./terraform-infrastructure/variables.tf](./terraform-infrastructure/variables.tf) (lines 12-21)
20+
- See: [./terraform-infrastructure/main.tf](./terraform-infrastructure/main.tf) (lines 35-45)
21+
- **Deployment Method**: Standard deployment (extracted .zip)
22+
- See: [./terraform-infrastructure/main.tf](./terraform-infrastructure/main.tf) (line 115)
23+
```terraform
24+
# Force standard deployment instead of mounted package
25+
"WEBSITE_RUN_FROM_PACKAGE" = "0"
26+
```
27+
- **Application Insights**: Full logging (no sampling)
28+
- See: [./terraform-infrastructure/main.tf](./terraform-infrastructure/main.tf) (lines 47-56)
29+
```terraform
30+
# No sampling configured - full logging
31+
sampling_percentage = 100
32+
```
33+
- **Verbose Diagnostics**: Enabled
34+
- See: [./terraform-infrastructure/main.tf](./terraform-infrastructure/main.tf) (line 118)
35+
```terraform
36+
# Enable full diagnostics
37+
"WEBSITE_ENABLE_DETAILED_DIAGNOSTICS" = "true"
38+
```
39+
- **Storage Logging**: Enabled
40+
- See: [./terraform-infrastructure/main.tf](./terraform-infrastructure/main.tf) (line 124)
41+
```terraform
42+
# Log to storage account (increases I/O operations)
43+
"AzureWebJobsDashboard" = azurerm_storage_account.storage.primary_connection_string
44+
```
45+
- **WEBSITE_RUN_FROM_PACKAGE**: Disabled (set to "0")
46+
- See: [./terraform-infrastructure/main.tf](./terraform-infrastructure/main.tf) (line 115)
47+
- **Key Vault Integration**: Secrets stored in Azure Key Vault
48+
- See: [./terraform-infrastructure/main.tf](./terraform-infrastructure/main.tf) (lines 147-193)
49+
- **Managed Identity**: System-assigned identity for Key Vault access
50+
- See: [./terraform-infrastructure/main.tf](./terraform-infrastructure/main.tf) (lines 96-98)
51+
52+
## Expected Results
53+
54+
- Rapid temp file accumulation in `C:\local\Temp`
55+
- Disk decay within 1-2 days
56+
- Restart clears only partial space due to locked files
57+
58+
## Deployment Instructions
59+
60+
> For detailed deployment instructions including VS Code deployment and Azure DevOps pipeline samples, see the [DEPLOYMENT.md](./DEPLOYMENT.md) guide.
61+
62+
1. Go to the terraform-infrastructure directory:
63+
```
64+
cd scenario-1-high-decay/terraform-infrastructure
65+
```
66+
67+
2. Update the `terraform.tfvars` file with your Azure subscription ID and preferred configuration values.
68+
69+
3. Initialize Terraform:
70+
```
71+
terraform init
72+
```
73+
74+
4. Apply the Terraform configuration:
75+
```
76+
terraform apply
77+
```
78+
79+
5. After infrastructure deployment, follow the deployment approaches in [DEPLOYMENT.md](./DEPLOYMENT.md) to publish the function app.
80+
81+
## Testing
82+
83+
> The function app includes HTTP triggers that can be used to test disk usage under load
84+
85+
## Monitoring
86+
87+
> Monitor the function app using:
88+
89+
- Azure Portal > Function App > Platform features > Advanced tools (Kudu)
90+
- Application Insights
91+
- Azure Monitor metrics
92+
93+
<!-- START BADGE -->
94+
<div align="center">
95+
<img src="https://img.shields.io/badge/Total%20views-1342-limegreen" alt="Total views">
96+
<p>Refresh Date: 2025-08-29</p>
97+
</div>
98+
<!-- END BADGE -->

0 commit comments

Comments
 (0)