Examples: Using the Eventing Service

    +

    This page contains examples of how to use the Eventing Service, using the Couchbase Web Console.

    Step by Step Examples

    Detailed Examples: These tutorial-like guides are ideal for a novice to learn the basics of the Eventing Service, via complete detailed step by step start-to-finish instructions.

    Data Enrichment

    Cascade Delete

    Document Expiry

    Delete v Expiry

    Document Archival

    Cancel or Overwrite Timer

    Recurring Timer

    External REST via cURL GET

    Risk Assessment

    Scriptlets or Terse Examples

    Basic KV Eventing Functions: The following Scriptlets are essentially stand alone Eventing Functions examples, and introduce more use cases. Here we assume the reader has a good understanding of the Eventing System and requires little guidance.

    basicBucketOps

    basicCurlGet

    basicCurlPost

    simpleTimer

    cascadeKvDeleteWithDoc

    redactSharedData

    simpleFlatten

    fixEmailDomains

    keepLastN

    docControlledSelfExpiry

    shippingNotifier

    ConvertBucketToCollections

    Basic N1QL Eventing Functions: The following Scriptlets demonstrate using N1QL or the Query Service from within an Eventing Function.

    basicN1qlSelectStmt

    basicN1qlPreparedSelectStmt

    Generic Manipulation Eventing Functions The following Scriptlets are more advanced use cases which focus on mutating documents without knowledge of the document’s schema.

    dateToEpochConversion

    deepCloneAndModify

    removeObjectStubs

    removeNullsAndEmptys

    genericRename

    genericFlatten

    convertXMLtoJSON

    convertAdvXMLtoJSON

    Advanced Accessor Eventing Functions: The following Scriptlets demonstrate using Advanced Bucket Accessors (introduced in version 6.6.1) which allow the use of CAS, ability to set expirations (or TTLs) and the use of distributed atomic counters to increment or decrement counts.

    advancedGetOp

    advancedGetOpWithCache

    advancedInsertOp

    advancedUpsertOp

    advancedReplaceOp

    advancedDeleteOp

    advancedIncrementOp

    advancedDecrementOp

    advancedKeepLastN

    advancedDocControlledSelfExpiry

    Binary Document Support: The following Scriptlets demonstrate support for binary documents in Eventing. Only a Function with “language compatibility” of 6.6.2 or above in its settings will pass binary documents to the OnUpdate(doc,meta) handler.

    basicBinaryKV

    advancedBinaryKV

    Performance Eventing Functions The following Scriptlets are performance oriented and/or benchmarks.

    fasterToLocalString