@kensio/yulin 1.20.17 → 1.21.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.js +4 -0
- package/dist/service/athena/engine/sim-athena-comparison-shims.d.ts +13 -0
- package/dist/service/athena/engine/sim-athena-comparison-shims.js +68 -0
- package/dist/service/athena/engine/sim-athena-shims.js +2 -0
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +3 -0
- package/dist/service/aws/factory/sim-aws-lambda-collaborators.d.ts +2 -0
- package/dist/service/aws/factory/sim-aws-lambda-collaborators.js +3 -0
- package/dist/service/aws/factory/sim-aws-logs-collaborators.d.ts +7 -0
- package/dist/service/aws/factory/sim-aws-logs-collaborators.js +10 -0
- package/dist/service/aws/factory/sim-aws-self-contained-service-builder.d.ts +3 -0
- package/dist/service/aws/factory/sim-aws-self-contained-service-builder.js +5 -0
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts +3 -0
- package/dist/service/aws/factory/sim-aws-service-factory.js +4 -0
- package/dist/service/aws/sim-aws-account-region-scope.d.ts +3 -0
- package/dist/service/aws/sim-aws-account-region-scope.js +4 -0
- package/dist/service/aws/sim-aws-account.d.ts +3 -0
- package/dist/service/aws/sim-aws-account.js +4 -0
- package/dist/service/aws/sim-aws-region.d.ts +3 -0
- package/dist/service/aws/sim-aws-region.js +4 -0
- package/dist/service/aws/sim-aws-service-accessors.d.ts +3 -0
- package/dist/service/aws/sim-aws-service-accessors.js +4 -0
- package/dist/service/backup/cfn/sim-backup-cfn-plan-creator.d.ts +6 -0
- package/dist/service/backup/cfn/sim-backup-cfn-plan-creator.js +12 -0
- package/dist/service/backup/cfn/sim-backup-cfn-resource-deleter.d.ts +12 -0
- package/dist/service/backup/cfn/sim-backup-cfn-resource-deleter.js +31 -0
- package/dist/service/backup/cfn/sim-backup-cfn-resource-factory.d.ts +15 -0
- package/dist/service/backup/cfn/sim-backup-cfn-resource-factory.js +38 -0
- package/dist/service/backup/cfn/sim-backup-cfn-selection-creator.d.ts +6 -0
- package/dist/service/backup/cfn/sim-backup-cfn-selection-creator.js +17 -0
- package/dist/service/backup/cfn/sim-backup-cfn-vault-creator.d.ts +6 -0
- package/dist/service/backup/cfn/sim-backup-cfn-vault-creator.js +29 -0
- package/dist/service/backup/cfn/sim-cfn-backup-plan-properties.d.ts +11 -0
- package/dist/service/backup/cfn/sim-cfn-backup-plan-properties.js +37 -0
- package/dist/service/backup/cfn/sim-cfn-backup-properties.d.ts +12 -0
- package/dist/service/backup/cfn/sim-cfn-backup-properties.js +37 -0
- package/dist/service/backup/cfn/sim-cfn-backup-property-reader.d.ts +17 -0
- package/dist/service/backup/cfn/sim-cfn-backup-property-reader.js +62 -0
- package/dist/service/backup/cfn/sim-cfn-backup-resource-error.d.ts +7 -0
- package/dist/service/backup/cfn/sim-cfn-backup-resource-error.js +22 -0
- package/dist/service/backup/command/sim-backup-authorizer.d.ts +11 -0
- package/dist/service/backup/command/sim-backup-authorizer.js +24 -0
- package/dist/service/backup/command/sim-backup-command.types.d.ts +238 -0
- package/dist/service/backup/command/sim-backup-command.types.js +1 -0
- package/dist/service/backup/command/sim-backup-configuration-commands.d.ts +32 -0
- package/dist/service/backup/command/sim-backup-configuration-commands.js +138 -0
- package/dist/service/backup/command/sim-backup-job-commands.d.ts +23 -0
- package/dist/service/backup/command/sim-backup-job-commands.js +52 -0
- package/dist/service/backup/command/sim-backup-recovery-point-commands.d.ts +18 -0
- package/dist/service/backup/command/sim-backup-recovery-point-commands.js +38 -0
- package/dist/service/backup/command/sim-backup-request-options.d.ts +4 -0
- package/dist/service/backup/command/sim-backup-request-options.js +1 -0
- package/dist/service/backup/command/sim-backup-required-string.d.ts +2 -0
- package/dist/service/backup/command/sim-backup-required-string.js +8 -0
- package/dist/service/backup/error/sim-backup.error.d.ts +38 -0
- package/dist/service/backup/error/sim-backup.error.js +50 -0
- package/dist/service/backup/index.d.ts +9 -0
- package/dist/service/backup/index.js +7 -0
- package/dist/service/backup/job/sim-backup-job-input.d.ts +11 -0
- package/dist/service/backup/job/sim-backup-job-input.js +1 -0
- package/dist/service/backup/job/sim-backup-job-page.d.ts +22 -0
- package/dist/service/backup/job/sim-backup-job-page.js +54 -0
- package/dist/service/backup/job/sim-backup-job.d.ts +25 -0
- package/dist/service/backup/job/sim-backup-job.factory.d.ts +10 -0
- package/dist/service/backup/job/sim-backup-job.factory.js +24 -0
- package/dist/service/backup/job/sim-backup-job.js +54 -0
- package/dist/service/backup/job/sim-backup-jobs.d.ts +18 -0
- package/dist/service/backup/job/sim-backup-jobs.js +33 -0
- package/dist/service/backup/plan/sim-backup-plan-schedules.d.ts +21 -0
- package/dist/service/backup/plan/sim-backup-plan-schedules.js +66 -0
- package/dist/service/backup/plan/sim-backup-plan.d.ts +22 -0
- package/dist/service/backup/plan/sim-backup-plan.js +37 -0
- package/dist/service/backup/plan/sim-backup-rule.d.ts +9 -0
- package/dist/service/backup/plan/sim-backup-rule.js +71 -0
- package/dist/service/backup/recovery-point/sim-backup-recovery-point.d.ts +28 -0
- package/dist/service/backup/recovery-point/sim-backup-recovery-point.factory.d.ts +9 -0
- package/dist/service/backup/recovery-point/sim-backup-recovery-point.factory.js +23 -0
- package/dist/service/backup/recovery-point/sim-backup-recovery-point.js +62 -0
- package/dist/service/backup/sdk/sim-backup-sdk-command-router.d.ts +9 -0
- package/dist/service/backup/sdk/sim-backup-sdk-command-router.js +37 -0
- package/dist/service/backup/selection/sim-backup-selection.d.ts +22 -0
- package/dist/service/backup/selection/sim-backup-selection.js +43 -0
- package/dist/service/backup/sim-backup-arn.d.ts +7 -0
- package/dist/service/backup/sim-backup-arn.js +12 -0
- package/dist/service/backup/sim-backup-properties.d.ts +8 -0
- package/dist/service/backup/sim-backup-properties.js +1 -0
- package/dist/service/backup/sim-backup-resource-resolver.d.ts +24 -0
- package/dist/service/backup/sim-backup-resource-resolver.js +44 -0
- package/dist/service/backup/sim-backup-store.d.ts +29 -0
- package/dist/service/backup/sim-backup-store.js +80 -0
- package/dist/service/backup/sim-backup.d.ts +48 -0
- package/dist/service/backup/sim-backup.js +139 -0
- package/dist/service/backup/vault/sim-backup-vault-description.d.ts +12 -0
- package/dist/service/backup/vault/sim-backup-vault-description.js +15 -0
- package/dist/service/backup/vault/sim-backup-vault-lock-configuration.d.ts +5 -0
- package/dist/service/backup/vault/sim-backup-vault-lock-configuration.js +31 -0
- package/dist/service/backup/vault/sim-backup-vault-lock.d.ts +15 -0
- package/dist/service/backup/vault/sim-backup-vault-lock.js +23 -0
- package/dist/service/backup/vault/sim-backup-vault-recovery-points.d.ts +12 -0
- package/dist/service/backup/vault/sim-backup-vault-recovery-points.js +30 -0
- package/dist/service/backup/vault/sim-backup-vault-retention.d.ts +4 -0
- package/dist/service/backup/vault/sim-backup-vault-retention.js +20 -0
- package/dist/service/backup/vault/sim-backup-vault.d.ts +33 -0
- package/dist/service/backup/vault/sim-backup-vault.js +49 -0
- package/dist/service/cloudformation/resource/cfn/backup/sim-backup-cfn-value-adapter.d.ts +3 -0
- package/dist/service/cloudformation/resource/cfn/backup/sim-backup-cfn-value-adapter.js +66 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js +8 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-orp-cfn.d.ts +24 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-orp-cfn.js +31 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-cfn-value-adapter.js +6 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-metric-filter-cfn.d.ts +23 -0
- package/dist/service/cloudformation/resource/cfn/logs/sim-logs-metric-filter-cfn.js +22 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-service-value-adapters.js +2 -0
- package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-properties.d.ts +49 -0
- package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-properties.js +61 -0
- package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-property.type.d.ts +51 -0
- package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-property.type.js +1 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js +4 -0
- package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts +12 -1
- package/dist/service/cloudfront/cache/sim-cf-accept-encoding.d.ts +11 -0
- package/dist/service/cloudfront/cache/sim-cf-accept-encoding.js +27 -0
- package/dist/service/cloudfront/cache/sim-cf-cache-control.d.ts +28 -0
- package/dist/service/cloudfront/cache/sim-cf-cache-control.js +49 -0
- package/dist/service/cloudfront/cache/sim-cf-cache-entry-key-path.d.ts +11 -0
- package/dist/service/cloudfront/cache/sim-cf-cache-entry-key-path.js +22 -0
- package/dist/service/cloudfront/cache/sim-cf-cache-entry-key.d.ts +32 -0
- package/dist/service/cloudfront/cache/sim-cf-cache-entry-key.js +112 -0
- package/dist/service/cloudfront/cache/sim-cf-cache-status.d.ts +27 -0
- package/dist/service/cloudfront/cache/sim-cf-cache-status.js +53 -0
- package/dist/service/cloudfront/cache/sim-cf-cache-ttl.d.ts +28 -0
- package/dist/service/cloudfront/cache/sim-cf-cache-ttl.js +50 -0
- package/dist/service/cloudfront/cache/sim-cf-cacheable-request.d.ts +35 -0
- package/dist/service/cloudfront/cache/sim-cf-cacheable-request.js +32 -0
- package/dist/service/cloudfront/cache/sim-cf-distribution-cache.d.ts +57 -0
- package/dist/service/cloudfront/cache/sim-cf-distribution-cache.js +115 -0
- package/dist/service/cloudfront/cache/sim-cf-edge.d.ts +37 -0
- package/dist/service/cloudfront/cache/sim-cf-edge.js +34 -0
- package/dist/service/cloudfront/cache/sim-cf-error-cache-ttl.d.ts +36 -0
- package/dist/service/cloudfront/cache/sim-cf-error-cache-ttl.js +28 -0
- package/dist/service/cloudfront/cache/sim-cf-http-date.d.ts +15 -0
- package/dist/service/cloudfront/cache/sim-cf-http-date.js +40 -0
- package/dist/service/cloudfront/cache-policy/sim-cf-cache-key.d.ts +63 -0
- package/dist/service/cloudfront/cache-policy/sim-cf-cache-key.js +70 -0
- package/dist/service/cloudfront/cache-policy/sim-cf-cache-policy.d.ts +13 -3
- package/dist/service/cloudfront/cache-policy/sim-cf-cache-policy.js +31 -3
- package/dist/service/cloudfront/cache-policy/sim-cf-managed-cache-policies.d.ts +8 -3
- package/dist/service/cloudfront/cache-policy/sim-cf-managed-cache-policies.js +96 -12
- package/dist/service/cloudfront/cff/sim-cff-search-distribution.fixture.js +4 -0
- package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-config.d.ts +9 -8
- package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-config.js +40 -11
- package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-key.d.ts +10 -0
- package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-key.js +50 -0
- package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-section.d.ts +28 -0
- package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-section.js +29 -0
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-behavior-policy-kinds.d.ts +16 -0
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-behavior-policy-kinds.js +23 -0
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-behavior-policies.d.ts +3 -2
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-behavior-policies.js +3 -2
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.d.ts +6 -6
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.js +6 -6
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-policy-drops.js +8 -23
- package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-config.d.ts +28 -0
- package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-config.js +46 -0
- package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-creator.d.ts +24 -0
- package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-creator.js +32 -0
- package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-forwarding.d.ts +10 -0
- package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-forwarding.js +51 -0
- package/dist/service/cloudfront/cfn/policy/sim-cfn-cf-policy-section.d.ts +22 -0
- package/dist/service/cloudfront/cfn/policy/sim-cfn-cf-policy-section.js +54 -0
- package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +1 -0
- package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +12 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +1 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts +2 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-create-invalidation.d.ts +28 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-create-invalidation.js +59 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-get-invalidation.d.ts +19 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-get-invalidation.js +32 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-access.d.ts +36 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-access.js +45 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-command.types.d.ts +80 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-command.types.js +1 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-commands.d.ts +39 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-commands.js +35 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-list-invalidations.d.ts +23 -0
- package/dist/service/cloudfront/command/invalidation/sim-cf-list-invalidations.js +39 -0
- package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts +2 -0
- package/dist/service/cloudfront/controller/content/sim-cf-content-stage.d.ts +51 -0
- package/dist/service/cloudfront/controller/content/sim-cf-content-stage.js +65 -0
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts +2 -3
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js +4 -4
- package/dist/service/cloudfront/controller/error/sim-cf-custom-error-responder.d.ts +4 -0
- package/dist/service/cloudfront/controller/error/sim-cf-custom-error-responder.js +12 -8
- package/dist/service/cloudfront/controller/origin/sim-cf-origin-stage.d.ts +2 -2
- package/dist/service/cloudfront/controller/origin/sim-cf-origin-stage.js +2 -2
- package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts +6 -6
- package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js +35 -20
- package/dist/service/cloudfront/custom-error/sim-cloudfront-custom-error-response.d.ts +23 -5
- package/dist/service/cloudfront/custom-error/sim-cloudfront-custom-error-response.js +8 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-origin-request-policy.d.ts +18 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-origin-request-policy.js +30 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-policies.d.ts +7 -5
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-policies.js +8 -5
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-properties.js +4 -1
- package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.d.ts +2 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.js +6 -2
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-custom-error-configurator.d.ts +13 -3
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-custom-error-configurator.js +27 -6
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.d.ts +3 -1
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.js +4 -1
- package/dist/service/cloudfront/distribution/sim-cf-distribution-configuration-state.d.ts +5 -3
- package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.d.ts +2 -0
- package/dist/service/cloudfront/distribution/sim-cf-distribution-view.js +1 -1
- package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts +25 -2
- package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js +24 -0
- package/dist/service/cloudfront/error/sim-cf-invalidation.error.d.ts +22 -0
- package/dist/service/cloudfront/error/sim-cf-invalidation.error.js +26 -0
- package/dist/service/cloudfront/error/sim-cf-origin-request-policy.error.d.ts +22 -0
- package/dist/service/cloudfront/error/sim-cf-origin-request-policy.error.js +26 -0
- package/dist/service/cloudfront/index.d.ts +2 -0
- package/dist/service/cloudfront/index.js +1 -0
- package/dist/service/cloudfront/invalidation/sim-cf-invalidation-path.d.ts +22 -0
- package/dist/service/cloudfront/invalidation/sim-cf-invalidation-path.js +32 -0
- package/dist/service/cloudfront/invalidation/sim-cf-invalidation-view.d.ts +43 -0
- package/dist/service/cloudfront/invalidation/sim-cf-invalidation-view.js +33 -0
- package/dist/service/cloudfront/invalidation/sim-cf-invalidation.d.ts +55 -0
- package/dist/service/cloudfront/invalidation/sim-cf-invalidation.js +56 -0
- package/dist/service/cloudfront/invalidation/sim-cf-invalidations.d.ts +41 -0
- package/dist/service/cloudfront/invalidation/sim-cf-invalidations.js +58 -0
- package/dist/service/cloudfront/invalidation/sim-cf-repeated-invalidation.d.ts +15 -0
- package/dist/service/cloudfront/invalidation/sim-cf-repeated-invalidation.js +23 -0
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-forwarding.d.ts +19 -0
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-forwarding.js +116 -0
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.d.ts +15 -5
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.js +13 -8
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-signer.js +8 -5
- package/dist/service/cloudfront/origin/custom/sim-cloudfront-custom-origin.d.ts +13 -0
- package/dist/service/cloudfront/origin/custom/sim-cloudfront-custom-origin.js +8 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-behavior-forwarded.d.ts +24 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-behavior-forwarded.js +21 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-forwarded-to-origin.d.ts +57 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-forwarded-to-origin.js +129 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-managed-origin-request-policies.d.ts +30 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-managed-origin-request-policies.js +121 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-forwarding.d.ts +56 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-forwarding.js +67 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-policy-registry.d.ts +38 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-policy-registry.js +51 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-policy.d.ts +32 -0
- package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-policy.js +30 -0
- package/dist/service/cloudfront/registry/sim-cloud-front-registry.d.ts +25 -0
- package/dist/service/cloudfront/registry/sim-cloud-front-registry.js +23 -0
- package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.js +12 -0
- package/dist/service/cloudfront/sim-cloudfront-caching.d.ts +31 -0
- package/dist/service/cloudfront/sim-cloudfront-caching.js +38 -0
- package/dist/service/cloudfront/sim-cloudfront-commands.d.ts +12 -0
- package/dist/service/cloudfront/sim-cloudfront-commands.js +12 -0
- package/dist/service/cloudfront/sim-cloudfront-distributions.d.ts +21 -0
- package/dist/service/cloudfront/sim-cloudfront-distributions.js +23 -0
- package/dist/service/cloudfront/sim-cloudfront-origin-access-controls.d.ts +30 -0
- package/dist/service/cloudfront/sim-cloudfront-origin-access-controls.js +35 -0
- package/dist/service/cloudfront/sim-cloudfront-policies.d.ts +22 -5
- package/dist/service/cloudfront/sim-cloudfront-policies.js +27 -5
- package/dist/service/cloudfront/sim-cloudfront.d.ts +15 -31
- package/dist/service/cloudfront/sim-cloudfront.js +23 -41
- package/dist/service/cloudwatch/index.d.ts +1 -0
- package/dist/service/cloudwatch/index.js +1 -0
- package/dist/service/cloudwatch/sim-cloudwatch-commands.d.ts +2 -0
- package/dist/service/cloudwatch/sim-cloudwatch-commands.js +6 -0
- package/dist/service/cloudwatch/sim-cloudwatch.d.ts +9 -0
- package/dist/service/cloudwatch/sim-cloudwatch.js +10 -0
- package/dist/service/cloudwatch/write/sim-cloudwatch-service-writer.d.ts +58 -0
- package/dist/service/cloudwatch/write/sim-cloudwatch-service-writer.js +53 -0
- package/dist/service/cognito/command/auth/sim-cognito-admin-respond-to-challenge.d.ts +3 -0
- package/dist/service/cognito/command/auth/sim-cognito-admin-respond-to-challenge.js +8 -2
- package/dist/service/cognito/command/auth/sim-cognito-auth-commands.d.ts +3 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-commands.js +4 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.d.ts +11 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.js +13 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-resolver.d.ts +3 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-resolver.js +16 -4
- package/dist/service/cognito/command/auth/sim-cognito-get-tokens-from-refresh-token.d.ts +7 -0
- package/dist/service/cognito/command/auth/sim-cognito-get-tokens-from-refresh-token.js +11 -1
- package/dist/service/cognito/command/auth/sim-cognito-respond-to-challenge.d.ts +3 -0
- package/dist/service/cognito/command/auth/sim-cognito-respond-to-challenge.js +8 -2
- package/dist/service/cognito/command/hosted/hosted-auth.command.d.ts +19 -0
- package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.d.ts +1 -1
- package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.js +3 -2
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.d.ts +8 -0
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.js +11 -3
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.d.ts +11 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.js +13 -2
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.d.ts +11 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.js +11 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.d.ts +7 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.js +18 -7
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-signed-in.d.ts +20 -3
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-signed-in.js +19 -3
- package/dist/service/cognito/command/hosted/sim-cognito-token-endpoint.d.ts +2 -0
- package/dist/service/cognito/command/hosted/sim-cognito-token-grants.d.ts +8 -0
- package/dist/service/cognito/command/hosted/sim-cognito-token-grants.js +13 -4
- package/dist/service/cognito/command/sim-cognito-commands.d.ts +5 -0
- package/dist/service/cognito/command/sim-cognito-commands.js +22 -2
- package/dist/service/cognito/command/user/sim-cognito-confirm-sign-up-commands.d.ts +74 -0
- package/dist/service/cognito/command/user/sim-cognito-confirm-sign-up-commands.js +110 -0
- package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.d.ts +5 -49
- package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.js +7 -87
- package/dist/service/cognito/command/user/sim-cognito-user-commands.d.ts +4 -0
- package/dist/service/cognito/command/user/sim-cognito-user-commands.js +38 -29
- package/dist/service/cognito/error/sim-cognito-managed-login.error.d.ts +23 -0
- package/dist/service/cognito/error/sim-cognito-managed-login.error.js +36 -0
- package/dist/service/cognito/error/sim-cognito-throttle.error.d.ts +13 -0
- package/dist/service/cognito/error/sim-cognito-throttle.error.js +15 -0
- package/dist/service/cognito/index.d.ts +2 -0
- package/dist/service/cognito/index.js +2 -0
- package/dist/service/cognito/metric/sim-cognito-counted-request.d.ts +50 -0
- package/dist/service/cognito/metric/sim-cognito-counted-request.js +51 -0
- package/dist/service/cognito/metric/sim-cognito-metrics.d.ts +22 -0
- package/dist/service/cognito/metric/sim-cognito-metrics.js +26 -0
- package/dist/service/cognito/metric/sim-cognito-pool-metrics.d.ts +40 -0
- package/dist/service/cognito/metric/sim-cognito-pool-metrics.js +51 -0
- package/dist/service/cognito/metric/sim-cognito-throttled-request.d.ts +11 -0
- package/dist/service/cognito/metric/sim-cognito-throttled-request.js +15 -0
- package/dist/service/cognito/serve/page/sim-cognito-managed-login.d.ts +1 -0
- package/dist/service/cognito/serve/page/sim-cognito-managed-login.js +6 -1
- package/dist/service/cognito/serve/page/sim-cognito-page-markup.d.ts +4 -1
- package/dist/service/cognito/serve/page/sim-cognito-page-markup.js +6 -2
- package/dist/service/cognito/serve/page/sim-cognito-provider-page.d.ts +35 -0
- package/dist/service/cognito/serve/page/sim-cognito-provider-page.js +50 -0
- package/dist/service/cognito/sim-cognito-identity-provider.d.ts +6 -0
- package/dist/service/cognito/sim-cognito-identity-provider.js +1 -0
- package/dist/service/cognito/sim-cognito-user-directory.js +3 -3
- package/dist/service/cognito/user-pool/auth/sim-cognito-authorization-code.d.ts +9 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-authorization-code.js +2 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.d.ts +8 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.js +8 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-request-throttle.d.ts +36 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-request-throttle.js +45 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-federated-sign-in.d.ts +42 -9
- package/dist/service/cognito/user-pool/idp/sim-cognito-federated-sign-in.js +56 -27
- package/dist/service/cognito/user-pool/idp/sim-cognito-federated-triggers.d.ts +52 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-federated-triggers.js +49 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.d.ts +48 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.js +94 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-same-federated-identity.d.ts +13 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-same-federated-identity.js +19 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-user-pool-identity-provider.d.ts +7 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-user-pool-identity-provider.js +9 -0
- package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-name.d.ts +3 -2
- package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-name.js +3 -2
- package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.d.ts +18 -1
- package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.js +35 -18
- package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.d.ts +6 -5
- package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.js +6 -5
- package/dist/service/iam/authorize/context/sim-iam-auth-z-input.d.ts +6 -4
- package/dist/service/kms/command/sim-kms-request-options.d.ts +9 -5
- package/dist/service/lambda/command/create-function/create-function.handler.d.ts +3 -0
- package/dist/service/lambda/command/create-function/create-function.handler.js +4 -1
- package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +2 -0
- package/dist/service/lambda/event-source/poll/kinesis/sim-lambda-kinesis-stream-delivery.js +7 -11
- package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.js +7 -8
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-iterator-age.d.ts +11 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-iterator-age.js +31 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-sequence-numbers.d.ts +10 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-sequence-numbers.js +12 -0
- package/dist/service/lambda/function/sim-lambda-function.d.ts +3 -0
- package/dist/service/lambda/function/sim-lambda-function.js +6 -2
- package/dist/service/lambda/function/sim-lambda-function.type.d.ts +7 -0
- package/dist/service/lambda/metric/sim-lambda-function-metrics.d.ts +47 -0
- package/dist/service/lambda/metric/sim-lambda-function-metrics.js +83 -0
- package/dist/service/lambda/metric/sim-lambda-iterator-age.d.ts +29 -0
- package/dist/service/lambda/metric/sim-lambda-iterator-age.js +41 -0
- package/dist/service/lambda/metric/sim-lambda-metrics.d.ts +12 -0
- package/dist/service/lambda/metric/sim-lambda-metrics.js +13 -0
- package/dist/service/lambda/sim-lambda-commands.d.ts +2 -0
- package/dist/service/lambda/sim-lambda-commands.js +2 -1
- package/dist/service/logs/cfn/metric/sim-cfn-metric-dimension-values.d.ts +9 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-dimension-values.js +25 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-creator.d.ts +30 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-creator.js +52 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-properties.d.ts +40 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-properties.js +66 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-property-rules.d.ts +19 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-property-rules.js +40 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-unsimulated-properties.d.ts +5 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-unsimulated-properties.js +23 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-value.d.ts +25 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-value.js +58 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-transformation-values.d.ts +6 -0
- package/dist/service/logs/cfn/metric/sim-cfn-metric-transformation-values.js +19 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.d.ts +2 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.js +4 -0
- package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.d.ts +5 -3
- package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.js +12 -3
- package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.d.ts +6 -4
- package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.js +13 -4
- package/dist/service/logs/command/event/sim-logs-put-log-events.d.ts +3 -0
- package/dist/service/logs/command/event/sim-logs-put-log-events.js +3 -0
- package/dist/service/logs/command/group/sim-logs-log-group-commands.js +3 -3
- package/dist/service/logs/command/metric/metric-filter.command.d.ts +79 -0
- package/dist/service/logs/command/metric/metric-filter.command.js +1 -0
- package/dist/service/logs/command/metric/sim-logs-metric-filter-commands.d.ts +48 -0
- package/dist/service/logs/command/metric/sim-logs-metric-filter-commands.js +95 -0
- package/dist/service/logs/command/metric/sim-logs-metric-filter-input.d.ts +11 -0
- package/dist/service/logs/command/metric/sim-logs-metric-filter-input.js +79 -0
- package/dist/service/logs/command/sim-logs-command.types.d.ts +1 -0
- package/dist/service/logs/delivery/cloudfront/sim-logs-vended-log-delivery.d.ts +23 -0
- package/dist/service/logs/delivery/cloudfront/sim-logs-vended-log-delivery.js +28 -0
- package/dist/service/logs/group/sim-logs-log-group.d.ts +6 -0
- package/dist/service/logs/group/sim-logs-log-group.js +6 -0
- package/dist/service/logs/index.d.ts +6 -0
- package/dist/service/logs/index.js +4 -0
- package/dist/service/logs/metric/cloudwatch/sim-aws-logs-metric-filter-metrics.d.ts +40 -0
- package/dist/service/logs/metric/cloudwatch/sim-aws-logs-metric-filter-metrics.js +78 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-datapoints.d.ts +25 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-datapoints.js +81 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-document.d.ts +57 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-document.js +85 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-json.d.ts +24 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-json.js +41 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-values.d.ts +20 -0
- package/dist/service/logs/metric/emf/sim-logs-embedded-metric-values.js +39 -0
- package/dist/service/logs/metric/sim-logs-metric-datapoint.d.ts +25 -0
- package/dist/service/logs/metric/sim-logs-metric-datapoint.js +1 -0
- package/dist/service/logs/metric/sim-logs-metric-fan-out.d.ts +62 -0
- package/dist/service/logs/metric/sim-logs-metric-fan-out.js +116 -0
- package/dist/service/logs/metric/sim-logs-metric-filter-selection.d.ts +17 -0
- package/dist/service/logs/metric/sim-logs-metric-filter-selection.js +17 -0
- package/dist/service/logs/metric/sim-logs-metric-filter-store.d.ts +35 -0
- package/dist/service/logs/metric/sim-logs-metric-filter-store.js +47 -0
- package/dist/service/logs/metric/sim-logs-metric-filter.d.ts +49 -0
- package/dist/service/logs/metric/sim-logs-metric-filter.js +95 -0
- package/dist/service/logs/metric/sim-logs-metric-publication-failure.d.ts +31 -0
- package/dist/service/logs/metric/sim-logs-metric-publication-failure.js +12 -0
- package/dist/service/logs/metric/sim-logs-metric-publications.d.ts +11 -0
- package/dist/service/logs/metric/sim-logs-metric-publications.js +1 -0
- package/dist/service/logs/metric/sim-logs-metric-transformation.d.ts +45 -0
- package/dist/service/logs/metric/sim-logs-metric-transformation.js +127 -0
- package/dist/service/logs/sdk/sim-logs-sdk-command-router.js +12 -0
- package/dist/service/logs/sim-logs-commands.d.ts +12 -0
- package/dist/service/logs/sim-logs-commands.js +17 -0
- package/dist/service/logs/sim-logs-metric-operations.d.ts +31 -0
- package/dist/service/logs/sim-logs-metric-operations.js +37 -0
- package/dist/service/logs/sim-logs.d.ts +4 -3
- package/dist/service/logs/sim-logs.js +4 -3
- package/dist/service/logs/write/sim-logs-service-writer.d.ts +3 -0
- package/dist/service/logs/write/sim-logs-service-writer.js +5 -1
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.d.ts +32 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.js +31 -1
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.d.ts +13 -2
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.js +18 -1
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.d.ts +17 -1
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.js +27 -3
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.d.ts +45 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.js +90 -0
- package/dist/service/s3/bucket/lock/sim-s3-bucket-object-lock.d.ts +42 -0
- package/dist/service/s3/bucket/lock/sim-s3-bucket-object-lock.js +59 -0
- package/dist/service/s3/bucket/lock/sim-s3-default-retention.d.ts +8 -0
- package/dist/service/s3/bucket/lock/sim-s3-default-retention.js +15 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock-configuration.d.ts +49 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock-configuration.js +102 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock-output.d.ts +14 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock-output.js +1 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock.d.ts +62 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-lock.js +100 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-retention.d.ts +55 -0
- package/dist/service/s3/bucket/lock/sim-s3-object-retention.js +82 -0
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.d.ts +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.js +9 -1
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.d.ts +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.js +1 -2
- package/dist/service/s3/bucket/sim-s3-bucket-objects.d.ts +114 -0
- package/dist/service/s3/bucket/sim-s3-bucket-objects.js +148 -0
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts +30 -29
- package/dist/service/s3/bucket/sim-s3-bucket.js +42 -45
- package/dist/service/s3/bucket/sim-s3-object-deletion.d.ts +30 -0
- package/dist/service/s3/bucket/sim-s3-object-deletion.js +29 -0
- package/dist/service/s3/bucket/versioning/sim-s3-bucket-versioning.d.ts +61 -0
- package/dist/service/s3/bucket/versioning/sim-s3-bucket-versioning.js +65 -0
- package/dist/service/s3/bucket/versioning/sim-s3-bucket-versions.d.ts +97 -0
- package/dist/service/s3/bucket/versioning/sim-s3-bucket-versions.js +176 -0
- package/dist/service/s3/bucket/versioning/sim-s3-compare-keys.d.ts +10 -0
- package/dist/service/s3/bucket/versioning/sim-s3-compare-keys.js +16 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.d.ts +85 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.js +101 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-versions.d.ts +52 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-versions.js +91 -0
- package/dist/service/s3/bucket/versioning/sim-s3-version-page.d.ts +32 -0
- package/dist/service/s3/bucket/versioning/sim-s3-version-page.js +45 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.d.ts +0 -5
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.js +3 -14
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.d.ts +18 -1
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.js +34 -1
- package/dist/service/s3/cfn/bucket/lock/sim-cfn-s3-bucket-object-lock-configuration.d.ts +37 -0
- package/dist/service/s3/cfn/bucket/lock/sim-cfn-s3-bucket-object-lock-configuration.js +78 -0
- package/dist/service/s3/cfn/bucket/replication/sim-cfn-s3-bucket-replication-rules.d.ts +20 -0
- package/dist/service/s3/cfn/bucket/replication/sim-cfn-s3-bucket-replication-rules.js +107 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.d.ts +14 -7
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +29 -37
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.d.ts +62 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.js +89 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts +9 -5
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js +16 -16
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.d.ts +9 -5
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.js +17 -6
- package/dist/service/s3/cfn/bucket/versioning/sim-cfn-s3-bucket-versioning-configuration.d.ts +19 -0
- package/dist/service/s3/cfn/bucket/versioning/sim-cfn-s3-bucket-versioning-configuration.js +28 -0
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.d.ts +24 -0
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.js +30 -0
- package/dist/service/s3/command/complete-multipart-upload/complete-multipart-upload.command.d.ts +2 -0
- package/dist/service/s3/command/complete-multipart-upload/complete-multipart-upload.handler.js +3 -1
- package/dist/service/s3/command/copy-object/copy-object.command.d.ts +3 -1
- package/dist/service/s3/command/copy-object/copy-object.handler.js +3 -1
- package/dist/service/s3/command/delete-object/delete-object-version-removal.d.ts +50 -0
- package/dist/service/s3/command/delete-object/delete-object-version-removal.js +52 -0
- package/dist/service/s3/command/delete-object/delete-object.command.d.ts +19 -2
- package/dist/service/s3/command/delete-object/delete-object.handler.d.ts +7 -1
- package/dist/service/s3/command/delete-object/delete-object.handler.js +28 -16
- package/dist/service/s3/command/delete-object/sim-s3-notify-deleted.d.ts +24 -0
- package/dist/service/s3/command/delete-object/sim-s3-notify-deleted.js +32 -0
- package/dist/service/s3/command/delete-objects/delete-object-attempt.d.ts +6 -2
- package/dist/service/s3/command/delete-objects/delete-object-attempt.js +6 -2
- package/dist/service/s3/command/delete-objects/delete-objects-key-removal.js +10 -9
- package/dist/service/s3/command/delete-objects/delete-objects-outcome.js +9 -1
- package/dist/service/s3/command/delete-objects/delete-objects.command.d.ts +6 -0
- package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.command.d.ts +23 -0
- package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.command.js +1 -0
- package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.handler.d.ts +31 -0
- package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.handler.js +40 -0
- package/dist/service/s3/command/get-object/get-object-loader.d.ts +3 -2
- package/dist/service/s3/command/get-object/get-object-loader.js +9 -4
- package/dist/service/s3/command/get-object/get-object.command.d.ts +9 -1
- package/dist/service/s3/command/get-object/get-object.handler.js +1 -1
- package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.command.d.ts +25 -0
- package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.command.js +1 -0
- package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.handler.d.ts +31 -0
- package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.handler.js +41 -0
- package/dist/service/s3/command/head-object/head-object-loader.d.ts +1 -1
- package/dist/service/s3/command/head-object/head-object-loader.js +7 -3
- package/dist/service/s3/command/head-object/head-object.command.d.ts +9 -1
- package/dist/service/s3/command/head-object/head-object.handler.js +1 -1
- package/dist/service/s3/command/list-object-versions/list-object-versions-listing.d.ts +31 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions-listing.js +55 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.d.ts +17 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.js +34 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions.command.d.ts +59 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions.command.js +1 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions.handler.d.ts +34 -0
- package/dist/service/s3/command/list-object-versions/list-object-versions.handler.js +62 -0
- package/dist/service/s3/command/object/sim-s3-read-object-version.d.ts +34 -0
- package/dist/service/s3/command/object/sim-s3-read-object-version.js +52 -0
- package/dist/service/s3/command/object-lock/sim-s3-locked-version.d.ts +11 -0
- package/dist/service/s3/command/object-lock/sim-s3-locked-version.js +27 -0
- package/dist/service/s3/command/object-lock/sim-s3-object-lock-authorizer.d.ts +42 -0
- package/dist/service/s3/command/object-lock/sim-s3-object-lock-authorizer.js +66 -0
- package/dist/service/s3/command/object-lock/sim-s3-object-lock-commands.d.ts +30 -0
- package/dist/service/s3/command/object-lock/sim-s3-object-lock-commands.js +41 -0
- package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.command.d.ts +21 -0
- package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.command.js +1 -0
- package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.handler.d.ts +31 -0
- package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.handler.js +44 -0
- package/dist/service/s3/command/put-object/put-object.command.d.ts +3 -0
- package/dist/service/s3/command/put-object/put-object.handler.js +10 -10
- package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.command.d.ts +24 -0
- package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.command.js +1 -0
- package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.handler.d.ts +32 -0
- package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.handler.js +41 -0
- package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.command.d.ts +21 -0
- package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.command.js +1 -0
- package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.handler.d.ts +32 -0
- package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.handler.js +47 -0
- package/dist/service/s3/command/put-object-retention/put-object-retention.command.d.ts +29 -0
- package/dist/service/s3/command/put-object-retention/put-object-retention.command.js +1 -0
- package/dist/service/s3/command/put-object-retention/put-object-retention.handler.d.ts +31 -0
- package/dist/service/s3/command/put-object-retention/put-object-retention.handler.js +42 -0
- package/dist/service/s3/command/sim-s3-command.types.d.ts +7 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-authorizer.d.ts +35 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-authorizer.js +57 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-commands.d.ts +26 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-commands.js +34 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-configuration-validation.d.ts +13 -0
- package/dist/service/s3/command/versioning/sim-s3-versioning-configuration-validation.js +28 -0
- package/dist/service/s3/error/sim-s3-object-lock.error.d.ts +22 -0
- package/dist/service/s3/error/sim-s3-object-lock.error.js +26 -0
- package/dist/service/s3/error/sim-s3.error.d.ts +22 -0
- package/dist/service/s3/error/sim-s3.error.js +26 -0
- package/dist/service/s3/notification/event/sim-s3-event-records.js +3 -0
- package/dist/service/s3/notification/event/sim-s3-event.type.d.ts +5 -3
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.d.ts +15 -0
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.js +4 -1
- package/dist/service/s3/notification/event/sim-s3-object-event.d.ts +6 -0
- package/dist/service/s3/notification/event/sim-s3-object-event.js +2 -0
- package/dist/service/s3/notification/sim-s3-object-notifier.d.ts +1 -1
- package/dist/service/s3/notification/sim-s3-object-notifier.js +2 -2
- package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.d.ts +10 -0
- package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.js +84 -0
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +6 -132
- package/dist/service/s3/sdk/sim-s3-sdk-object-lock-routes.d.ts +10 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-lock-routes.js +28 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-routes.d.ts +7 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-routes.js +80 -0
- package/dist/service/s3/sim-s3-commands.d.ts +4 -0
- package/dist/service/s3/sim-s3-commands.js +6 -0
- package/dist/service/s3/sim-s3-operations.d.ts +5 -5
- package/dist/service/s3/sim-s3-operations.js +5 -6
- package/dist/service/s3/sim-s3-version-operations.d.ts +32 -0
- package/dist/service/s3/sim-s3-version-operations.js +45 -0
- package/dist/service/scheduler/command/schedule/schedule.command.d.ts +9 -2
- package/dist/service/scheduler/command/schedule/sim-scheduler-described-schedule.js +2 -0
- package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-target.js +0 -6
- package/dist/service/scheduler/command/sim-scheduler-command.types.d.ts +1 -1
- package/dist/service/scheduler/command/sim-scheduler-commands.js +1 -0
- package/dist/service/scheduler/delivery/sim-aws-scheduler-dead-letters.d.ts +17 -0
- package/dist/service/scheduler/delivery/sim-aws-scheduler-dead-letters.js +29 -0
- package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.d.ts +6 -1
- package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.js +9 -0
- package/dist/service/scheduler/delivery/sim-scheduler-dead-letter-queue.d.ts +18 -0
- package/dist/service/scheduler/delivery/sim-scheduler-dead-letter-queue.js +62 -0
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-attempt.d.ts +29 -0
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-attempt.js +81 -0
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-function.js +9 -5
- package/dist/service/scheduler/delivery/sim-scheduler-delivery.d.ts +11 -0
- package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.d.ts +5 -1
- package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.js +8 -0
- package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.d.ts +4 -1
- package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.js +20 -15
- package/dist/service/scheduler/index.d.ts +1 -1
- package/dist/service/scheduler/target/sim-scheduler-dead-letter-config.d.ts +15 -0
- package/dist/service/scheduler/target/sim-scheduler-dead-letter-config.js +24 -0
- package/dist/service/scheduler/target/sim-scheduler-retry-policy.d.ts +20 -0
- package/dist/service/scheduler/target/sim-scheduler-retry-policy.js +37 -0
- package/dist/service/scheduler/target/sim-scheduler-target.d.ts +6 -0
- package/dist/service/scheduler/target/sim-scheduler-target.js +12 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-encryption-rules.d.ts +15 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-encryption-rules.js +33 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.d.ts +16 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.js +33 -1
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.d.ts +12 -6
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.js +18 -13
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.d.ts +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.js +9 -1
- package/dist/service/ssm/parameter/sim-ssm-kms-crypto.d.ts +7 -10
- package/dist/service/ssm/parameter/sim-ssm-parameter-kms.d.ts +10 -11
- package/dist/service/ssm/parameter/sim-ssm-parameter-kms.js +11 -16
- package/dist/terraform/map/sim-tf-map-sqs-redrive.d.ts +4 -3
- package/dist/terraform/map/sim-tf-map-sqs-redrive.js +4 -3
- package/docs/README.md +1 -0
- package/docs/services/athena/README.md +7 -1
- package/docs/services/backup/README.md +553 -0
- package/docs/services/cloudformation/README.md +18 -7
- package/docs/services/cloudfront/README.md +903 -25
- package/docs/services/cloudwatch/README.md +159 -3
- package/docs/services/cognito/README.md +370 -7
- package/docs/services/ecs/README.md +5 -2
- package/docs/services/kms/README.md +9 -5
- package/docs/services/lambda/README.md +28 -0
- package/docs/services/logs/README.md +290 -3
- package/docs/services/s3/README.md +463 -20
- package/docs/services/scheduler/README.md +48 -9
- package/docs/services/sqs/README.md +47 -10
- package/docs/services/ssm/README.md +26 -33
- package/llms.txt +1 -0
- package/package.json +7 -2
|
@@ -115,11 +115,12 @@ export declare class SimIamMandatoryResourcePolicyRequirement implements SimIamA
|
|
|
115
115
|
*
|
|
116
116
|
* A resource policy naming the caller still allows the request on its own, as
|
|
117
117
|
* a KMS key policy naming a Role does. A policy admitting whoever the request
|
|
118
|
-
* came from does not, because what it admits is the service
|
|
119
|
-
*
|
|
120
|
-
*
|
|
121
|
-
*
|
|
122
|
-
*
|
|
118
|
+
* came from does not, because what it admits is the service, and an identity
|
|
119
|
+
* policy has to allow the action as well.
|
|
120
|
+
*
|
|
121
|
+
* Nothing in the simulation asks for this rule. Parameter Store is the case it
|
|
122
|
+
* was written for, and the aws/ssm key policy grants its cryptographic actions
|
|
123
|
+
* to a wildcard principal outright.
|
|
123
124
|
*/
|
|
124
125
|
export declare class SimIamCallerPermissionRequirement implements SimIamAllowRequirement {
|
|
125
126
|
/**
|
|
@@ -120,11 +120,12 @@ export class SimIamMandatoryResourcePolicyRequirement {
|
|
|
120
120
|
*
|
|
121
121
|
* A resource policy naming the caller still allows the request on its own, as
|
|
122
122
|
* a KMS key policy naming a Role does. A policy admitting whoever the request
|
|
123
|
-
* came from does not, because what it admits is the service
|
|
124
|
-
*
|
|
125
|
-
*
|
|
126
|
-
*
|
|
127
|
-
*
|
|
123
|
+
* came from does not, because what it admits is the service, and an identity
|
|
124
|
+
* policy has to allow the action as well.
|
|
125
|
+
*
|
|
126
|
+
* Nothing in the simulation asks for this rule. Parameter Store is the case it
|
|
127
|
+
* was written for, and the aws/ssm key policy grants its cryptographic actions
|
|
128
|
+
* to a wildcard principal outright.
|
|
128
129
|
*/
|
|
129
130
|
export class SimIamCallerPermissionRequirement {
|
|
130
131
|
/**
|
|
@@ -78,10 +78,12 @@ export interface SimIamAuthorizationInput {
|
|
|
78
78
|
* resource policy admitting the caller is enough on its own. A service sets
|
|
79
79
|
* this where it reaches another service as the caller. A resource policy
|
|
80
80
|
* that admits whoever the request came from then grants nothing by itself,
|
|
81
|
-
* because what it admits is the service.
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
*
|
|
81
|
+
* because what it admits is the service. A resource policy naming the caller
|
|
82
|
+
* still allows the request on its own.
|
|
83
|
+
*
|
|
84
|
+
* No simulated service sets this. Parameter Store is the case it was written
|
|
85
|
+
* for, and the aws/ssm key policy grants its cryptographic actions to a
|
|
86
|
+
* wildcard principal outright.
|
|
85
87
|
*/
|
|
86
88
|
readonly withCallerPermissions?: boolean | undefined;
|
|
87
89
|
}
|
|
@@ -24,11 +24,15 @@ export interface SimKmsRequestOptions {
|
|
|
24
24
|
* Whether the service named by `viaService` is making the request with the
|
|
25
25
|
* caller's own KMS permissions rather than with its own.
|
|
26
26
|
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
27
|
+
* A key policy admitting whoever the request came from then grants nothing
|
|
28
|
+
* by itself, because what it admits is the service, and the caller has to
|
|
29
|
+
* hold the KMS action in an identity policy as well. A key policy naming the
|
|
30
|
+
* caller still allows the request on its own, as it does for any other KMS
|
|
31
|
+
* request.
|
|
32
|
+
*
|
|
33
|
+
* No simulated service sets this. Parameter Store is the case it was written
|
|
34
|
+
* for, and the aws/ssm key policy grants its cryptographic actions to a
|
|
35
|
+
* wildcard principal outright.
|
|
32
36
|
*/
|
|
33
37
|
readonly withCallerPermissions?: boolean | undefined;
|
|
34
38
|
}
|
|
@@ -7,6 +7,7 @@ import { type SimIamInterServiceAuthZ } from "../../../iam/authorize/sim-iam-int
|
|
|
7
7
|
import type { SimLambdaContainerImages } from "../../function/code/image/sim-lambda-container-images.js";
|
|
8
8
|
import type { SimLambdaCodeStore } from "../../function/code/store/sim-lambda-code-store.js";
|
|
9
9
|
import type { SimLambdaVmSdkModuleProvider } from "../../function/code/vm/sdk/sim-lambda-vm-sdk-module-provider.js";
|
|
10
|
+
import type { SimCloudWatchServiceWriter } from "../../../cloudwatch/write/sim-cloudwatch-service-writer.js";
|
|
10
11
|
import type { SimLogsServiceWriter } from "../../../logs/write/sim-logs-service-writer.js";
|
|
11
12
|
import type { SimLambdaOutboundHttp } from "../../function/outbound/sim-lambda-outbound-http.js";
|
|
12
13
|
import { SimLambdaEnvironmentConflicts } from "../../function/environment/sim-lambda-environment-conflicts.js";
|
|
@@ -23,6 +24,7 @@ interface CreateFunctionCommandHandlerProperties {
|
|
|
23
24
|
vmSdkModuleProvider?: SimLambdaVmSdkModuleProvider | undefined;
|
|
24
25
|
environmentConflicts?: SimLambdaEnvironmentConflicts;
|
|
25
26
|
logs?: SimLogsServiceWriter | undefined;
|
|
27
|
+
metrics?: SimCloudWatchServiceWriter | undefined;
|
|
26
28
|
outboundHttp?: SimLambdaOutboundHttp | undefined;
|
|
27
29
|
}
|
|
28
30
|
interface CreateFunctionCommandHandlerOptions {
|
|
@@ -42,6 +44,7 @@ export declare class CreateFunctionCommandHandler implements CommandHandler<SimC
|
|
|
42
44
|
private readonly codeResolver;
|
|
43
45
|
private readonly environmentConflicts;
|
|
44
46
|
private readonly logs;
|
|
47
|
+
private readonly metrics;
|
|
45
48
|
private readonly outboundHttp;
|
|
46
49
|
constructor(properties: CreateFunctionCommandHandlerProperties);
|
|
47
50
|
/**
|
|
@@ -22,9 +22,10 @@ export class CreateFunctionCommandHandler {
|
|
|
22
22
|
codeResolver;
|
|
23
23
|
environmentConflicts;
|
|
24
24
|
logs;
|
|
25
|
+
metrics;
|
|
25
26
|
outboundHttp;
|
|
26
27
|
constructor(properties) {
|
|
27
|
-
const { accountRegionScope, functions, runAsOwner, iam = new SimIamAllowAllAuth(), background = new BackgroundTasks(), codeStore, containerImages, vmSdkModuleProvider, environmentConflicts = new SimLambdaEnvironmentConflicts(), logs, outboundHttp, } = properties;
|
|
28
|
+
const { accountRegionScope, functions, runAsOwner, iam = new SimIamAllowAllAuth(), background = new BackgroundTasks(), codeStore, containerImages, vmSdkModuleProvider, environmentConflicts = new SimLambdaEnvironmentConflicts(), logs, metrics, outboundHttp, } = properties;
|
|
28
29
|
this.accountRegionScope = accountRegionScope;
|
|
29
30
|
this.functions = functions;
|
|
30
31
|
this.runAsOwner = runAsOwner;
|
|
@@ -41,6 +42,7 @@ export class CreateFunctionCommandHandler {
|
|
|
41
42
|
});
|
|
42
43
|
this.environmentConflicts = environmentConflicts;
|
|
43
44
|
this.logs = logs;
|
|
45
|
+
this.metrics = metrics;
|
|
44
46
|
this.outboundHttp = outboundHttp;
|
|
45
47
|
}
|
|
46
48
|
/**
|
|
@@ -70,6 +72,7 @@ export class CreateFunctionCommandHandler {
|
|
|
70
72
|
runAsOwner: this.runAsOwner,
|
|
71
73
|
clock: this.background,
|
|
72
74
|
logs: this.logs,
|
|
75
|
+
metrics: this.metrics,
|
|
73
76
|
outboundHttp: this.outboundHttp,
|
|
74
77
|
});
|
|
75
78
|
this.functions.set(simFunction.name, simFunction);
|
|
@@ -6,6 +6,7 @@ import type { SimIamInterServiceAuthZ } from "../../../iam/authorize/sim-iam-int
|
|
|
6
6
|
import type { SimLambdaContainerImages } from "../../function/code/image/sim-lambda-container-images.js";
|
|
7
7
|
import type { SimLambdaCodeStore } from "../../function/code/store/sim-lambda-code-store.js";
|
|
8
8
|
import type { SimLambdaVmSdkModuleProvider } from "../../function/code/vm/sdk/sim-lambda-vm-sdk-module-provider.js";
|
|
9
|
+
import type { SimCloudWatchServiceWriter } from "../../../cloudwatch/write/sim-cloudwatch-service-writer.js";
|
|
9
10
|
import type { SimLogsServiceWriter } from "../../../logs/write/sim-logs-service-writer.js";
|
|
10
11
|
import type { SimLambdaOutboundHttp } from "../../function/outbound/sim-lambda-outbound-http.js";
|
|
11
12
|
import type { SimLambdaDestinationTargets } from "../../destination/sim-lambda-destination-targets.js";
|
|
@@ -38,6 +39,7 @@ interface SimLambdaFunctionCommandsProperties {
|
|
|
38
39
|
readonly containerImages?: SimLambdaContainerImages | undefined;
|
|
39
40
|
readonly vmSdkModuleProvider?: SimLambdaVmSdkModuleProvider | undefined;
|
|
40
41
|
readonly logs?: SimLogsServiceWriter | undefined;
|
|
42
|
+
readonly metrics?: SimCloudWatchServiceWriter | undefined;
|
|
41
43
|
readonly outboundHttp?: SimLambdaOutboundHttp | undefined;
|
|
42
44
|
}
|
|
43
45
|
interface SimLambdaFunctionCommandOptions {
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { SimLambdaStreamCascadeGuard } from "../../stream/sim-lambda-stream-cascade-guard.js";
|
|
2
|
+
import { countSimLambdaKinesisIteratorAge } from "../sim-lambda-stream-iterator-age.js";
|
|
3
|
+
import { simLambdaStreamSequenceNumbers } from "../sim-lambda-stream-sequence-numbers.js";
|
|
2
4
|
import { SimLambdaStreamBatchResponse } from "../sim-lambda-stream-batch-response.js";
|
|
3
5
|
import { SimLambdaKinesisStreamEventBuilder } from "./sim-lambda-kinesis-stream-event.js";
|
|
4
6
|
/**
|
|
@@ -56,20 +58,14 @@ export class SimLambdaKinesisStreamDelivery {
|
|
|
56
58
|
// the stream sees is the batch being tried again.
|
|
57
59
|
return this.batchResponse.failed();
|
|
58
60
|
}
|
|
61
|
+
finally {
|
|
62
|
+
countSimLambdaKinesisIteratorAge(simFunction, records);
|
|
63
|
+
}
|
|
59
64
|
}
|
|
60
65
|
}
|
|
61
66
|
/**
|
|
62
|
-
* The sequence numbers
|
|
63
|
-
*
|
|
64
|
-
* A Kinesis batch item failure names a record by its sequence number, the way a
|
|
65
|
-
* DynamoDB one does, rather than by the `eventID` the event carried.
|
|
67
|
+
* The sequence numbers this batch's records can be named by.
|
|
66
68
|
*/
|
|
67
69
|
function sequenceNumbersOf(records) {
|
|
68
|
-
return records.
|
|
69
|
-
const sequenceNumber = record.SequenceNumber;
|
|
70
|
-
if (sequenceNumber === undefined || sequenceNumber === "") {
|
|
71
|
-
return [];
|
|
72
|
-
}
|
|
73
|
-
return [sequenceNumber];
|
|
74
|
-
});
|
|
70
|
+
return simLambdaStreamSequenceNumbers(records.map((one) => one.SequenceNumber));
|
|
75
71
|
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { SimLambdaStreamCascadeGuard } from "../stream/sim-lambda-stream-cascade-guard.js";
|
|
2
2
|
import { SimLambdaDynamoDbStreamEventBuilder } from "./sim-lambda-dynamodb-stream-event.js";
|
|
3
|
+
import { countSimLambdaDynamoDbIteratorAge } from "./sim-lambda-stream-iterator-age.js";
|
|
4
|
+
import { simLambdaStreamSequenceNumbers } from "./sim-lambda-stream-sequence-numbers.js";
|
|
3
5
|
import { SimLambdaStreamBatchResponse } from "./sim-lambda-stream-batch-response.js";
|
|
4
6
|
/**
|
|
5
7
|
* Hands one batch of stream records to a function and says what became of it.
|
|
@@ -55,17 +57,14 @@ export class SimLambdaDynamoDbStreamDelivery {
|
|
|
55
57
|
// the table sees is the batch being tried again.
|
|
56
58
|
return this.batchResponse.failed();
|
|
57
59
|
}
|
|
60
|
+
finally {
|
|
61
|
+
countSimLambdaDynamoDbIteratorAge(simFunction, records);
|
|
62
|
+
}
|
|
58
63
|
}
|
|
59
64
|
}
|
|
60
65
|
/**
|
|
61
|
-
* The sequence numbers
|
|
66
|
+
* The sequence numbers this batch's records can be named by.
|
|
62
67
|
*/
|
|
63
68
|
function sequenceNumbersOf(records) {
|
|
64
|
-
return records.
|
|
65
|
-
const sequenceNumber = record.dynamodb?.SequenceNumber;
|
|
66
|
-
if (sequenceNumber === undefined || sequenceNumber === "") {
|
|
67
|
-
return [];
|
|
68
|
-
}
|
|
69
|
-
return [sequenceNumber];
|
|
70
|
-
});
|
|
69
|
+
return simLambdaStreamSequenceNumbers(records.map((one) => one.dynamodb?.SequenceNumber));
|
|
71
70
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SimLambdaFunction } from "../../function/sim-lambda-function.js";
|
|
2
|
+
import type { SimLambdaKinesisStreamRecord } from "../stream/kinesis/sim-lambda-kinesis-streams.js";
|
|
3
|
+
import type { SimLambdaEventSourceStreamRecord } from "../stream/sim-lambda-event-source-streams.js";
|
|
4
|
+
/**
|
|
5
|
+
* Count what a finished DynamoDB Streams batch left on the clock.
|
|
6
|
+
*/
|
|
7
|
+
export declare function countSimLambdaDynamoDbIteratorAge(simFunction: SimLambdaFunction, records: readonly SimLambdaEventSourceStreamRecord[]): void;
|
|
8
|
+
/**
|
|
9
|
+
* Count what a finished Kinesis batch left on the clock.
|
|
10
|
+
*/
|
|
11
|
+
export declare function countSimLambdaKinesisIteratorAge(simFunction: SimLambdaFunction, records: readonly SimLambdaKinesisStreamRecord[]): void;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Count what a finished DynamoDB Streams batch left on the clock.
|
|
3
|
+
*/
|
|
4
|
+
export function countSimLambdaDynamoDbIteratorAge(simFunction, records) {
|
|
5
|
+
simFunction.metrics.iteratorAge.count(simFunction.name, newestOf(records.map((one) => one.dynamodb?.ApproximateCreationDateTime)));
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Count what a finished Kinesis batch left on the clock.
|
|
9
|
+
*/
|
|
10
|
+
export function countSimLambdaKinesisIteratorAge(simFunction, records) {
|
|
11
|
+
simFunction.metrics.iteratorAge.count(simFunction.name, newestOf(records.map((one) => one.ApproximateArrivalTimestamp)));
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* The latest of the times given, if any of them is a time.
|
|
15
|
+
*
|
|
16
|
+
* This is what `IteratorAge` is measured back from. Records reach a poller in
|
|
17
|
+
* stream order, and the whole batch is read anyway because a record carrying
|
|
18
|
+
* no time would otherwise decide the answer by where it sits.
|
|
19
|
+
*
|
|
20
|
+
* A batch whose records all arrive without a time has no answer, and the
|
|
21
|
+
* metric is left uncounted rather than measured from nothing.
|
|
22
|
+
*/
|
|
23
|
+
function newestOf(times) {
|
|
24
|
+
let newest;
|
|
25
|
+
for (const time of times) {
|
|
26
|
+
if (time !== undefined && (newest === undefined || time > newest)) {
|
|
27
|
+
newest = time;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return newest;
|
|
31
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The sequence numbers a batch's records can be named by, in stream order.
|
|
3
|
+
*
|
|
4
|
+
* A batch item failure names a record by its sequence number, on Kinesis the
|
|
5
|
+
* same way as on DynamoDB Streams, rather than by the `eventID` a DynamoDB
|
|
6
|
+
* event carries. Both pollers read the same list out of whatever their own
|
|
7
|
+
* records call the field. A record without a sequence number cannot be named,
|
|
8
|
+
* and it is left out rather than reported as an empty name.
|
|
9
|
+
*/
|
|
10
|
+
export declare function simLambdaStreamSequenceNumbers(values: readonly (string | undefined)[]): readonly string[];
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The sequence numbers a batch's records can be named by, in stream order.
|
|
3
|
+
*
|
|
4
|
+
* A batch item failure names a record by its sequence number, on Kinesis the
|
|
5
|
+
* same way as on DynamoDB Streams, rather than by the `eventID` a DynamoDB
|
|
6
|
+
* event carries. Both pollers read the same list out of whatever their own
|
|
7
|
+
* records call the field. A record without a sequence number cannot be named,
|
|
8
|
+
* and it is left out rather than reported as an empty name.
|
|
9
|
+
*/
|
|
10
|
+
export function simLambdaStreamSequenceNumbers(values) {
|
|
11
|
+
return values.flatMap((value) => value === undefined || value === "" ? [] : [value]);
|
|
12
|
+
}
|
|
@@ -3,6 +3,7 @@ import { type SimLambdaFunctionArn, type SimLambdaFunctionConfiguration, type Si
|
|
|
3
3
|
import { type SimLambdaExecutableCode } from "./code/sim-lambda-executable-code.js";
|
|
4
4
|
import { SimLambdaEnvironment } from "./environment/sim-lambda-environment.js";
|
|
5
5
|
import { SimLambdaFunctionPolicy } from "./policy/sim-lambda-function-policy.js";
|
|
6
|
+
import { SimLambdaFunctionMetrics } from "../metric/sim-lambda-function-metrics.js";
|
|
6
7
|
import { type SimLambdaFunctionConfigurationUpdate } from "./sim-lambda-function-reconfiguration.js";
|
|
7
8
|
import type { SimLambdaFunctionName, SimLambdaFunctionProperties } from "./sim-lambda-function.type.js";
|
|
8
9
|
export type { SimLambdaFunctionName, SimLambdaFunctionMap, } from "./sim-lambda-function.type.js";
|
|
@@ -44,6 +45,8 @@ export declare class SimLambdaFunction {
|
|
|
44
45
|
* sees.
|
|
45
46
|
*/
|
|
46
47
|
readonly resourcePolicy: SimLambdaFunctionPolicy;
|
|
48
|
+
/** What this function publishes about its own work into `AWS/Lambda`. */
|
|
49
|
+
readonly metrics: SimLambdaFunctionMetrics;
|
|
47
50
|
private readonly properties;
|
|
48
51
|
private readonly runAsOwner;
|
|
49
52
|
private readonly runner;
|
|
@@ -7,6 +7,7 @@ import { SimLambdaEnvironment } from "./environment/sim-lambda-environment.js";
|
|
|
7
7
|
import { SimLambdaFunctionLogging } from "./logging/sim-lambda-function-logging.js";
|
|
8
8
|
import { SimLambdaFunctionPolicy } from "./policy/sim-lambda-function-policy.js";
|
|
9
9
|
import { SimLambdaHandlerRunner } from "./invoke/sim-lambda-handler-runner.js";
|
|
10
|
+
import { SimLambdaFunctionMetrics } from "../metric/sim-lambda-function-metrics.js";
|
|
10
11
|
import { SimLambdaInvokeContextBuilder } from "./invoke/sim-lambda-invoke-context-builder.js";
|
|
11
12
|
import { runSimLambdaInHostScope } from "./invoke/sim-lambda-host-scope.js";
|
|
12
13
|
import { SimRealClock } from "../../../util/clock/sim-clock.js";
|
|
@@ -49,6 +50,8 @@ export class SimLambdaFunction {
|
|
|
49
50
|
* sees.
|
|
50
51
|
*/
|
|
51
52
|
resourcePolicy = new SimLambdaFunctionPolicy();
|
|
53
|
+
/** What this function publishes about its own work into `AWS/Lambda`. */
|
|
54
|
+
metrics;
|
|
52
55
|
#state;
|
|
53
56
|
#code;
|
|
54
57
|
properties;
|
|
@@ -58,7 +61,7 @@ export class SimLambdaFunction {
|
|
|
58
61
|
logging;
|
|
59
62
|
outboundHttp;
|
|
60
63
|
constructor(properties) {
|
|
61
|
-
const { name, roleArn, accountRegionScope = simAwsAccountRegionScopeFactory.make(), handlerFunction = defaultLambdaHandler, code, state = "Pending", handlerName, runtimeName, description, timeoutSeconds = DEFAULT_SIM_LAMBDA_TIMEOUT_SECONDS, memorySizeMb = DEFAULT_SIM_LAMBDA_MEMORY_SIZE_MB, environment, deadLetterTargetArn, runAsOwner = this, version = SIM_LAMBDA_LATEST_VERSION, clock = new SimRealClock(), logs, outboundHttp, } = properties;
|
|
64
|
+
const { name, roleArn, accountRegionScope = simAwsAccountRegionScopeFactory.make(), handlerFunction = defaultLambdaHandler, code, state = "Pending", handlerName, runtimeName, description, timeoutSeconds = DEFAULT_SIM_LAMBDA_TIMEOUT_SECONDS, memorySizeMb = DEFAULT_SIM_LAMBDA_MEMORY_SIZE_MB, environment, deadLetterTargetArn, runAsOwner = this, version = SIM_LAMBDA_LATEST_VERSION, clock = new SimRealClock(), logs, metrics, outboundHttp, } = properties;
|
|
62
65
|
this.properties = properties;
|
|
63
66
|
this.clock = clock;
|
|
64
67
|
this.version = version;
|
|
@@ -82,6 +85,7 @@ export class SimLambdaFunction {
|
|
|
82
85
|
this.deadLetterTargetArn = deadLetterTargetArn;
|
|
83
86
|
this.runAsOwner = runAsOwner;
|
|
84
87
|
this.outboundHttp = outboundHttp;
|
|
88
|
+
this.metrics = new SimLambdaFunctionMetrics({ metrics, clock });
|
|
85
89
|
this.logging = new SimLambdaFunctionLogging({
|
|
86
90
|
functionName: name,
|
|
87
91
|
logs,
|
|
@@ -188,7 +192,7 @@ export class SimLambdaFunction {
|
|
|
188
192
|
logStreamName: this.logging.logStreamName(),
|
|
189
193
|
});
|
|
190
194
|
this.logging.recordFrom(this.#code);
|
|
191
|
-
return await simAwsRunAsContext.run(this.runAsOwner, { kind: "arn", arn: this.roleArn }, async () => await this.environment.runWith(async () => await this.runInHostScope(async () => await this.logging.around(async () => await this.runner.run(this.#code.handlerFunction(), event, contextBuilder)))));
|
|
195
|
+
return await this.metrics.around(String(this.name), async () => simAwsRunAsContext.run(this.runAsOwner, { kind: "arn", arn: this.roleArn }, async () => await this.environment.runWith(async () => await this.runInHostScope(async () => await this.logging.around(async () => await this.runner.run(this.#code.handlerFunction(), event, contextBuilder))))));
|
|
192
196
|
}
|
|
193
197
|
/**
|
|
194
198
|
* Run an invocation with the process globals host-scope code reads bridged
|
|
@@ -2,6 +2,7 @@ import type { Brand } from "../../../util/brand.type.js";
|
|
|
2
2
|
import type { SimClock } from "../../../util/clock/sim-clock.js";
|
|
3
3
|
import type { SimAwsRunAsOwner } from "../../aws/caller/sim-aws-run-as-context.js";
|
|
4
4
|
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
5
|
+
import type { SimCloudWatchServiceWriter } from "../../cloudwatch/write/sim-cloudwatch-service-writer.js";
|
|
5
6
|
import type { SimLogsServiceWriter } from "../../logs/write/sim-logs-service-writer.js";
|
|
6
7
|
import type { SimLambdaExecutableCode } from "./code/sim-lambda-executable-code.js";
|
|
7
8
|
import type { SimLambdaEnvironment } from "./environment/sim-lambda-environment.js";
|
|
@@ -47,6 +48,12 @@ export interface SimLambdaFunctionProperties {
|
|
|
47
48
|
* only to the host streams.
|
|
48
49
|
*/
|
|
49
50
|
logs?: SimLogsServiceWriter | undefined;
|
|
51
|
+
/**
|
|
52
|
+
* Where this function's invocations are counted. A function built
|
|
53
|
+
* standalone, outside a SimAws instance, has no simulated CloudWatch to
|
|
54
|
+
* publish `AWS/Lambda` metrics into and counts nothing.
|
|
55
|
+
*/
|
|
56
|
+
metrics?: SimCloudWatchServiceWriter | undefined;
|
|
50
57
|
/**
|
|
51
58
|
* Where the HTTP requests this function's code makes to hostnames the
|
|
52
59
|
* simulation serves are answered. A function built standalone, outside a
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { SimClock } from "../../../util/clock/sim-clock.js";
|
|
2
|
+
import type { SimCloudWatchServiceWriter } from "../../cloudwatch/write/sim-cloudwatch-service-writer.js";
|
|
3
|
+
import { SimLambdaIteratorAge } from "./sim-lambda-iterator-age.js";
|
|
4
|
+
/**
|
|
5
|
+
* How one invocation went, as the metrics read it.
|
|
6
|
+
*/
|
|
7
|
+
export interface SimLambdaInvocationOutcome {
|
|
8
|
+
readonly functionName: string;
|
|
9
|
+
/** How far the simulation's clock moved while the handler ran. */
|
|
10
|
+
readonly durationMilliseconds: number;
|
|
11
|
+
/** Whether the handler threw, which is what real Lambda counts an error. */
|
|
12
|
+
readonly failed: boolean;
|
|
13
|
+
}
|
|
14
|
+
interface SimLambdaFunctionMetricsProperties {
|
|
15
|
+
readonly metrics: SimCloudWatchServiceWriter | undefined;
|
|
16
|
+
readonly clock: SimClock;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* What a simulated Lambda function publishes about its own work.
|
|
20
|
+
*
|
|
21
|
+
* Real Lambda publishes these without being asked and without a caller needing
|
|
22
|
+
* any permission, so they go in through simulated CloudWatch's service writer
|
|
23
|
+
* rather than through `PutMetricData`, which refuses the `AWS/Lambda`
|
|
24
|
+
* namespace exactly as an account does.
|
|
25
|
+
*
|
|
26
|
+
* A function built on its own, outside a `SimAws` instance, has no CloudWatch
|
|
27
|
+
* to publish into and counts nothing.
|
|
28
|
+
*/
|
|
29
|
+
export declare class SimLambdaFunctionMetrics {
|
|
30
|
+
#private;
|
|
31
|
+
/** How far behind its stream a finished batch left this function. */
|
|
32
|
+
readonly iteratorAge: SimLambdaIteratorAge;
|
|
33
|
+
constructor(properties: SimLambdaFunctionMetricsProperties);
|
|
34
|
+
/**
|
|
35
|
+
* Run one invocation and count how it went.
|
|
36
|
+
*
|
|
37
|
+
* `Invocations` counts every invocation, including one that failed, which is
|
|
38
|
+
* how real Lambda counts them. `Errors` counts the ones that threw, so an
|
|
39
|
+
* alarm reading one against the other gets a failure rate.
|
|
40
|
+
*
|
|
41
|
+
* The duration is measured on the simulation's clock rather than the host's,
|
|
42
|
+
* so it is a number a test can assert on. A handler that moves the clock
|
|
43
|
+
* reports the time it moved, and one that does not reports nothing spent.
|
|
44
|
+
*/
|
|
45
|
+
around<T>(functionName: string, run: () => Promise<T>): Promise<T>;
|
|
46
|
+
}
|
|
47
|
+
export {};
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { SimLambdaIteratorAge } from "./sim-lambda-iterator-age.js";
|
|
2
|
+
import { simLambdaFunctionDimensions, simLambdaMetricNamespace, } from "./sim-lambda-metrics.js";
|
|
3
|
+
/**
|
|
4
|
+
* What a simulated Lambda function publishes about its own work.
|
|
5
|
+
*
|
|
6
|
+
* Real Lambda publishes these without being asked and without a caller needing
|
|
7
|
+
* any permission, so they go in through simulated CloudWatch's service writer
|
|
8
|
+
* rather than through `PutMetricData`, which refuses the `AWS/Lambda`
|
|
9
|
+
* namespace exactly as an account does.
|
|
10
|
+
*
|
|
11
|
+
* A function built on its own, outside a `SimAws` instance, has no CloudWatch
|
|
12
|
+
* to publish into and counts nothing.
|
|
13
|
+
*/
|
|
14
|
+
export class SimLambdaFunctionMetrics {
|
|
15
|
+
/** How far behind its stream a finished batch left this function. */
|
|
16
|
+
iteratorAge;
|
|
17
|
+
#metrics;
|
|
18
|
+
#clock;
|
|
19
|
+
constructor(properties) {
|
|
20
|
+
this.#metrics = properties.metrics;
|
|
21
|
+
this.#clock = properties.clock;
|
|
22
|
+
this.iteratorAge = new SimLambdaIteratorAge(properties);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Run one invocation and count how it went.
|
|
26
|
+
*
|
|
27
|
+
* `Invocations` counts every invocation, including one that failed, which is
|
|
28
|
+
* how real Lambda counts them. `Errors` counts the ones that threw, so an
|
|
29
|
+
* alarm reading one against the other gets a failure rate.
|
|
30
|
+
*
|
|
31
|
+
* The duration is measured on the simulation's clock rather than the host's,
|
|
32
|
+
* so it is a number a test can assert on. A handler that moves the clock
|
|
33
|
+
* reports the time it moved, and one that does not reports nothing spent.
|
|
34
|
+
*/
|
|
35
|
+
async around(functionName, run) {
|
|
36
|
+
const startedAt = this.#clock.now().getTime();
|
|
37
|
+
let failed = true;
|
|
38
|
+
try {
|
|
39
|
+
const result = await run();
|
|
40
|
+
failed = false;
|
|
41
|
+
return result;
|
|
42
|
+
}
|
|
43
|
+
finally {
|
|
44
|
+
this.#metrics?.publish(invocationData({
|
|
45
|
+
functionName,
|
|
46
|
+
durationMilliseconds: this.#clock.now().getTime() - startedAt,
|
|
47
|
+
failed,
|
|
48
|
+
}));
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* The datapoints one finished invocation produced.
|
|
54
|
+
*/
|
|
55
|
+
function invocationData(outcome) {
|
|
56
|
+
const dimensions = simLambdaFunctionDimensions(outcome.functionName);
|
|
57
|
+
const data = [
|
|
58
|
+
{
|
|
59
|
+
namespace: simLambdaMetricNamespace,
|
|
60
|
+
metricName: "Invocations",
|
|
61
|
+
dimensions,
|
|
62
|
+
value: 1,
|
|
63
|
+
unit: "Count",
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
namespace: simLambdaMetricNamespace,
|
|
67
|
+
metricName: "Duration",
|
|
68
|
+
dimensions,
|
|
69
|
+
value: outcome.durationMilliseconds,
|
|
70
|
+
unit: "Milliseconds",
|
|
71
|
+
},
|
|
72
|
+
];
|
|
73
|
+
if (outcome.failed) {
|
|
74
|
+
data.push({
|
|
75
|
+
namespace: simLambdaMetricNamespace,
|
|
76
|
+
metricName: "Errors",
|
|
77
|
+
dimensions,
|
|
78
|
+
value: 1,
|
|
79
|
+
unit: "Count",
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
return data;
|
|
83
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { SimClock } from "../../../util/clock/sim-clock.js";
|
|
2
|
+
import type { SimCloudWatchServiceWriter } from "../../cloudwatch/write/sim-cloudwatch-service-writer.js";
|
|
3
|
+
interface SimLambdaIteratorAgeProperties {
|
|
4
|
+
readonly metrics: SimCloudWatchServiceWriter | undefined;
|
|
5
|
+
readonly clock: SimClock;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* How far behind its stream a finished batch left a function.
|
|
9
|
+
*
|
|
10
|
+
* Real Lambda publishes `IteratorAge` when a function finishes processing a
|
|
11
|
+
* batch of stream records, as the distance between the newest record in the
|
|
12
|
+
* batch and the moment the batch finished. A batch that failed is counted too,
|
|
13
|
+
* because the retry leaves the function further behind rather than caught up.
|
|
14
|
+
*
|
|
15
|
+
* The age is measured on the simulation's clock, so a test that lets records
|
|
16
|
+
* age before anything reads them gets back the interval it let pass.
|
|
17
|
+
*/
|
|
18
|
+
export declare class SimLambdaIteratorAge {
|
|
19
|
+
#private;
|
|
20
|
+
constructor(properties: SimLambdaIteratorAgeProperties);
|
|
21
|
+
/**
|
|
22
|
+
* Count one finished batch.
|
|
23
|
+
*
|
|
24
|
+
* A batch whose records carry no creation time is left uncounted, because
|
|
25
|
+
* there is nothing to measure the age from.
|
|
26
|
+
*/
|
|
27
|
+
count(functionName: string, newestRecordAt: Date | undefined): void;
|
|
28
|
+
}
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { simLambdaFunctionDimensions, simLambdaMetricNamespace, } from "./sim-lambda-metrics.js";
|
|
2
|
+
/**
|
|
3
|
+
* How far behind its stream a finished batch left a function.
|
|
4
|
+
*
|
|
5
|
+
* Real Lambda publishes `IteratorAge` when a function finishes processing a
|
|
6
|
+
* batch of stream records, as the distance between the newest record in the
|
|
7
|
+
* batch and the moment the batch finished. A batch that failed is counted too,
|
|
8
|
+
* because the retry leaves the function further behind rather than caught up.
|
|
9
|
+
*
|
|
10
|
+
* The age is measured on the simulation's clock, so a test that lets records
|
|
11
|
+
* age before anything reads them gets back the interval it let pass.
|
|
12
|
+
*/
|
|
13
|
+
export class SimLambdaIteratorAge {
|
|
14
|
+
#metrics;
|
|
15
|
+
#clock;
|
|
16
|
+
constructor(properties) {
|
|
17
|
+
this.#metrics = properties.metrics;
|
|
18
|
+
this.#clock = properties.clock;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Count one finished batch.
|
|
22
|
+
*
|
|
23
|
+
* A batch whose records carry no creation time is left uncounted, because
|
|
24
|
+
* there is nothing to measure the age from.
|
|
25
|
+
*/
|
|
26
|
+
count(functionName, newestRecordAt) {
|
|
27
|
+
if (newestRecordAt === undefined) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
const age = this.#clock.now().getTime() - newestRecordAt.getTime();
|
|
31
|
+
this.#metrics?.publish([
|
|
32
|
+
{
|
|
33
|
+
namespace: simLambdaMetricNamespace,
|
|
34
|
+
metricName: "IteratorAge",
|
|
35
|
+
dimensions: simLambdaFunctionDimensions(functionName),
|
|
36
|
+
value: Math.max(0, age),
|
|
37
|
+
unit: "Milliseconds",
|
|
38
|
+
},
|
|
39
|
+
]);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { SimCloudWatchDimensionInput } from "../../cloudwatch/metric/sim-cloudwatch-dimension.js";
|
|
2
|
+
/**
|
|
3
|
+
* The namespace real Lambda publishes what it counts about a function under.
|
|
4
|
+
*/
|
|
5
|
+
export declare const simLambdaMetricNamespace = "AWS/Lambda";
|
|
6
|
+
/**
|
|
7
|
+
* The dimensions every metric here carries.
|
|
8
|
+
*
|
|
9
|
+
* Real Lambda dimensions a function's own metrics by `FunctionName`, and an
|
|
10
|
+
* alarm a stack declares on one names the function the same way.
|
|
11
|
+
*/
|
|
12
|
+
export declare function simLambdaFunctionDimensions(functionName: string): readonly SimCloudWatchDimensionInput[];
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The namespace real Lambda publishes what it counts about a function under.
|
|
3
|
+
*/
|
|
4
|
+
export const simLambdaMetricNamespace = "AWS/Lambda";
|
|
5
|
+
/**
|
|
6
|
+
* The dimensions every metric here carries.
|
|
7
|
+
*
|
|
8
|
+
* Real Lambda dimensions a function's own metrics by `FunctionName`, and an
|
|
9
|
+
* alarm a stack declares on one names the function the same way.
|
|
10
|
+
*/
|
|
11
|
+
export function simLambdaFunctionDimensions(functionName) {
|
|
12
|
+
return [{ Name: "FunctionName", Value: functionName }];
|
|
13
|
+
}
|
|
@@ -15,6 +15,7 @@ import type { SimLambdaKinesisStreams } from "./event-source/stream/kinesis/sim-
|
|
|
15
15
|
import { type SimLambdaContainerImages } from "./function/code/image/sim-lambda-container-images.js";
|
|
16
16
|
import type { SimLambdaCodeStore } from "./function/code/store/sim-lambda-code-store.js";
|
|
17
17
|
import type { SimLambdaVmSdkModuleProvider } from "./function/code/vm/sdk/sim-lambda-vm-sdk-module-provider.js";
|
|
18
|
+
import type { SimCloudWatchServiceWriter } from "../cloudwatch/write/sim-cloudwatch-service-writer.js";
|
|
18
19
|
import type { SimLogsServiceWriter } from "../logs/write/sim-logs-service-writer.js";
|
|
19
20
|
import type { SimLambdaOutboundHttp } from "./function/outbound/sim-lambda-outbound-http.js";
|
|
20
21
|
import { SimLambdaEventInvokeConfigStore } from "./function/event-invoke/sim-lambda-event-invoke-config-store.js";
|
|
@@ -37,6 +38,7 @@ export interface SimLambdaProperties {
|
|
|
37
38
|
readonly containerImages?: SimLambdaContainerImages;
|
|
38
39
|
readonly vmSdkModuleProvider?: SimLambdaVmSdkModuleProvider;
|
|
39
40
|
readonly logs?: SimLogsServiceWriter | undefined;
|
|
41
|
+
readonly metrics?: SimCloudWatchServiceWriter | undefined;
|
|
40
42
|
/**
|
|
41
43
|
* Where the HTTP requests this simulated Lambda's function code makes to
|
|
42
44
|
* hostnames the simulation serves are answered. A standalone SimLambda has
|
|
@@ -51,7 +51,7 @@ export class SimLambdaCommands {
|
|
|
51
51
|
eventSourceMappings;
|
|
52
52
|
eventInvokeConfigs;
|
|
53
53
|
constructor(properties) {
|
|
54
|
-
const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), background = new BackgroundTasks(), codeStore, vmSdkModuleProvider, logs, outboundHttp,
|
|
54
|
+
const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), background = new BackgroundTasks(), codeStore, vmSdkModuleProvider, logs, metrics, outboundHttp,
|
|
55
55
|
// A standalone SimLambda is not reachable over HTTP, so its own registry
|
|
56
56
|
// is enough; a SimAws-created one shares the environment-wide registry
|
|
57
57
|
// the serving layer routes with.
|
|
@@ -142,6 +142,7 @@ export class SimLambdaCommands {
|
|
|
142
142
|
containerImages,
|
|
143
143
|
vmSdkModuleProvider,
|
|
144
144
|
logs,
|
|
145
|
+
metrics,
|
|
145
146
|
outboundHttp,
|
|
146
147
|
});
|
|
147
148
|
}
|