This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new e5f2e32  Document default values for Pulsar Functions (#1657)
e5f2e32 is described below

commit e5f2e32c526bf88592ce7ce9e6261ccabe9aa858
Author: Luc Perkins <lucperk...@gmail.com>
AuthorDate: Thu May 3 14:23:48 2018 -0700

    Document default values for Pulsar Functions (#1657)
    
    * add section on default values
    
    * clarify default tenants and namespaces
---
 site/docs/latest/functions/api.md        | 12 ++++++----
 site/docs/latest/functions/deployment.md | 39 ++++++++++++++++++++++++++++++++
 site/docs/latest/functions/overview.md   |  4 ++--
 3 files changed, 49 insertions(+), 6 deletions(-)

diff --git a/site/docs/latest/functions/api.md 
b/site/docs/latest/functions/api.md
index ca45b94..4f92012 100644
--- a/site/docs/latest/functions/api.md
+++ b/site/docs/latest/functions/api.md
@@ -45,10 +45,14 @@ Deploying Pulsar Functions is handled by the 
[`pulsar-admin`](../../reference/Cl
 
 ```bash
 $ bin/pulsar-admin functions localrun \
-  --py sanitizer.py \
-  --className sanitizer \
-  --tenant sample \
-  --namespace ns1
+  --py sanitizer.py \          # The Python file with the function's code
+  --className sanitizer \      # The class or function holding the processing 
logic
+  --tenant sample \            # The function's tenant (derived from the topic 
name by default)
+  --namespace ns1 \            # The function's namespace (derived from the 
topic name by default)
+  --name sanitizer-function \  # The name of the function (the class name by 
default)
+  --inputs dirty-strings-in \  # The input topic(s) for the function
+  --output clean-strings-out \ # The output topic for the function
+  --logTopic sanitizer-logs    # The topic to which all functions logs are 
published
 ```
 
 For instructions on running functions in your Pulsar cluster, see the 
[Deploying Pulsar Functions](../deployment) guide.
diff --git a/site/docs/latest/functions/deployment.md 
b/site/docs/latest/functions/deployment.md
index 25c0c2f..3dbe6dd 100644
--- a/site/docs/latest/functions/deployment.md
+++ b/site/docs/latest/functions/deployment.md
@@ -22,6 +22,45 @@ In order to deploy and manage Pulsar Functions, you need to 
have a Pulsar {% pop
 
 If you're running a non-{% popover standalone %} cluster, you'll need to 
obtain the service URL for the cluster. How you obtain the service URL will 
depend on how you deployed your Pulsar cluster.
 
+## Command-line interface {#cli}
+
+Pulsar Functions are deployed and managed using the [`pulsar-admin 
functions`](../../reference/CliTools#pulsar-admin-functions) interface, which 
contains commands such as 
[`create`](../../reference/CliTools#pulsar-admin-functions-create) for 
deploying functions in [cluster mode](#cluster-mode), 
[`trigger`](../../reference/CliTools#pulsar-admin-functions-trigger) for 
[triggering](#triggering) functions, 
[`list`](../../reference/CliTools#pulsar-admin-functions-list) for listing 
deployed fu [...]
+
+### Fully Qualified Function Name (FQFN) {#fqfn}
+
+Each Pulsar Function has a **Fully Qualified Function Name** (FQFN) that 
consists of three elements: the function's {% popover tenant %}, {% popover 
namespace %}, and function name. FQFN's look like this:
+
+{% include fqfn.html tenant="tenant" namespace="namespace" name="name" %}
+
+FQFNs enable you to, for example, create multiple functions with the same name 
provided that they're in different namespaces.
+
+### Default arguments
+
+When managing Pulsar Functions, you'll need to specify a variety of 
information about those functions, including {% popover tenant %}, {% popover 
namespace %}, input and output topics, etc. There are some parameters, however, 
that have default values that will be supplied if omitted. The table below 
lists the defaults:
+
+Parameter | Default
+:---------|:-------
+Function name | Whichever value is specified for the class name. For example, 
`--className org.example.MyFunction` would give the function a name of 
`MyFunction`
+Tenant | Derived from the input topics' names. If the input topics are under 
the `marketing` tenant---i.e. the topic names have the form 
`persistent://marketing/{namespace}/{topicName}`---then the tenant will be 
`marketing`.
+Namespace | Derived from the input topics' names. If the input topics are 
under the `asia` namespace under the `marketing` tenant---i.e. the topic names 
have the form `persistent://marketing/asia/{topicName}`, then the namespace 
will be `asia`.
+Output topic | `{input topic}-{function name}-output`. A function with an 
input topic name of `incoming` and a function name of `exclamation`, for 
example, would have an output topic of `incoming-exclamation-output`.
+Subscription type | For at-least-once and at-most-once [processing 
guarantees](../guarantees), the 
[`SHARED`](../../getting-started/ConceptsAndArchitecture#shared) is applied by 
default; for effectively-once guarantees, 
[`FAILOVER`](../../getting-started/ConceptsAndArchitecture#failover) is applied
+Processing guarantees | [`ATLEAST_ONCE`](../guarantees)
+Pulsar service URL | `pulsar://localhost:6650`
+
+#### Example use of defaults
+
+Take this `create` command:
+
+```bash
+$ bin/pulsar-admin functions create \
+  --jar my-pulsar-functions.jar \
+  --className org.example.MyFunction \
+  --inputs my-function-input-topic1,my-function-input-topic2
+```
+
+The created function would have default values supplied for the function name 
(`MyFunction`), tenant (`public`), namespace (`default`), subscription type 
(`SHARED`), processing guarantees (`ATLEAST_ONCE`), and Pulsar service URL 
(`pulsar://localhost:6650`).
+
 ## Local run mode {#local-run}
 
 If you run a Pulsar Function in **local run** mode, it will run on the machine 
from which the command is run (this could be your laptop, an [AWS 
EC2](https://aws.amazon.com/ec2/) instance, etc.). Here's an example 
[`localrun`](../../CliTools#pulsar-admin-functions-localrun) command:
diff --git a/site/docs/latest/functions/overview.md 
b/site/docs/latest/functions/overview.md
index d99c280..a904f81 100644
--- a/site/docs/latest/functions/overview.md
+++ b/site/docs/latest/functions/overview.md
@@ -264,8 +264,8 @@ The Pulsar Functions feature was built to support a variety 
of deployment option
 
 Deployment mode | Description
 :---------------|:-----------
-Local run mode | The function runs in your local environment, for example on 
your laptop
-Cluster mode | The function runs *inside of* your Pulsar cluster, on the same 
machines as your Pulsar {% popover brokers %}
+[Local run mode](#local-run) | The function runs in your local environment, 
for example on your laptop
+[Cluster mode](#cluster-run) | The function runs *inside of* your Pulsar 
cluster, on the same machines as your Pulsar {% popover brokers %}
 
 ### Local run mode {#local-run}
 

-- 
To stop receiving notification emails like this one, please contact
mme...@apache.org.

Reply via email to