Hi,
Azure Activity log alerts only support inclusion and not exclusions. You can do filtering with Log Analytics alerts. Example query would look like:
AzureActivity
| where OperationNameValue endswith "/WRITE" and ActivitySubstatusValue =~ 'Created' and OperationNameValue !~ 'MICROSOFT.RESOURCES/DEPLOYMENTS/WRITE'
| where Caller !in ("******@contoso.com","******@contoso.com")
Note that only write operations that are with status Created are included to avoid getting notified on write operations on resources that already exists. The deployments resource is excluded as those are creation of deployments which are resource on its own but my understanding is that is not what you are looking for. You are looking for resources like VMs, SQL, etc. Deployments are resources that are created/written when there is ARM or Bicep deployment happening which does not necessary means new resources are created with that deployment and resources can also be created without actual deployment happening.
Alternatively you could use Alert processing rules. Keep in mind that in that case the alert instance will still be generated but you can suppress any actions/notifications done via action groups. You can use Alert Context filter. That will filter based on any payload value matched. Sample payload for Azure activity log alert. Note that you also need to filter on the Monitor service. Other filters can be add by you if you need ti.
Please "Accept the answer" if the information helped you. This will help us and others in the community as well.