### Quickstart: Add repository and install Hazelcast Enterprise Source: https://docs.hazelcast.com/hazelcast/5.7/kubernetes/helm-hazelcast-enterprise-chart Adds the Hazelcast Helm chart repository, updates it, and installs Hazelcast Enterprise with a license key. ```shell helm repo add hazelcast https://hazelcast-charts.s3.amazonaws.com/ helm repo update helm install my-release hazelcast/hazelcast-enterprise --set hazelcast.licenseKey= ``` -------------------------------- ### Sample client startup logs Source: https://docs.hazelcast.com/hazelcast/5.7/clients/cplusplus Example output showing lifecycle events, connection attempts, authentication, and member list when starting the client. ```Log 18/11/2022 21:22:26.835 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/spi.cpp:375] (Wed Nov 18 17:25:23 2022 +0300:3b11bea) LifecycleService::LifecycleEvent Client (75121987-12fe-4ede-860d-59222e6d3ef2) is STARTING 18/11/2022 21:22:26.835 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/spi.cpp:379] (Wed Nov 18 17:25:23 2022 +0300:3b11bea) LifecycleService::LifecycleEvent STARTING 18/11/2022 21:22:26.835 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/spi.cpp:387] LifecycleService::LifecycleEvent STARTED 18/11/2022 21:22:26.837 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/network.cpp:587] Trying to connect to Address[10.212.1.117:5701] 18/11/2022 21:22:26.840 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/spi.cpp:411] LifecycleService::LifecycleEvent CLIENT_CONNECTED 18/11/2022 21:22:26.840 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/network.cpp:637] Authenticated with server Address[:5701]:a27f900e-b1eb-48be-aa46-d7a4922ef704, server version: 4.2, local address: Address[10.212.1.116:37946] 18/11/2022 21:22:26.841 INFO: [139868341360384] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/spi.cpp:881] Members [1] { Member[10.212.1.117]:5701 - a27f900e-b1eb-48be-aa46-d7a4922ef704 } Started the Hazelcast C++ client instance hz.client_1 ``` -------------------------------- ### Install Hazelcast Go client Source: https://docs.hazelcast.com/hazelcast/5.7/data-structures/set Installs the Hazelcast Go client library using the go get command. ```shell go get github.com/hazelcast/hazelcast-go-client shellCopy__ ``` -------------------------------- ### C++ client authentication setup Source: https://docs.hazelcast.com/hazelcast/5.7/getting-started/authenticate-client-tutorial Create a C++ client with username/password credentials and cluster name 'hello-world'. Requires installing the latest C++ client library. ```cpp hazelcast::client::client_config clientConfig; clientConfig.set_credentials( std::make_shared("member1", "s3crEtPassword*")); clientConfig.set_cluster_name("hello-world"); auto hz = hazelcast::new_client(std::move(clientConfig)).get(); cppCopy__ ``` -------------------------------- ### Go client authentication setup Source: https://docs.hazelcast.com/hazelcast/5.7/getting-started/authenticate-client-tutorial Create a Go client with cluster name 'hello-world' and credentials 'member1'/'s3crEtPassword*'. Requires initializing a Go module and installing hazelcast-go-client. ```go package main import ( "context" "github.com/hazelcast/hazelcast-go-client" ) func main() { ctx := context.TODO() config := hazelcast.Config{} cc := &config.Cluster cc.Network.SetAddresses("127.0.0.1:5701") cc.Name = "hello-world" creds := &cc.Security.Credentials creds.Username = "member1" creds.Password = "s3crEtPassword*" client, err := hazelcast.StartNewClientWithConfig(ctx, config) if err != nil { panic(err) } client.Shutdown(ctx) } goCopy__ ``` -------------------------------- ### Maven Version Output Example Source: https://docs.hazelcast.com/hazelcast/5.7/pipelines/stream-processing-client Example output from running mvn -v when Maven is installed. Shows Maven version, Java version, and OS details. ```text Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d) Maven home: /usr/local/Cellar/maven/3.8.1/libexec Java version: 16.0.1, vendor: Homebrew, runtime: /usr/local/Cellar/openjdk/16.0.1/libexec/openjdk.jdk/Contents/Home Default locale: en_GB, platform encoding: UTF-8 OS name: "mac os x", version: "10.15.7", arch: "x86_64", family: "mac" ``` -------------------------------- ### MySQL container startup output Source: https://docs.hazelcast.com/hazelcast/5.7/pipelines/cdc Example output shown after starting the MySQL container. The last line indicates the MySQL server is running and ready for use. ```text ... 2020-03-09T09:48:24.579480Z 0 [Note] mysqld: ready for connections. Version: '5.7.29-log' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server (GPL) ``` -------------------------------- ### Java client authentication setup Source: https://docs.hazelcast.com/hazelcast/5.7/getting-started/authenticate-client-tutorial Create a Java client with cluster name 'hello-world' and username/password identity config. Requires installing the Java client library. ```java import com.hazelcast.client.HazelcastClient; import com.hazelcast.client.config.ClientConfig; public class SecuredClient { public static void main(String[] args) { ClientConfig clientConfig = new ClientConfig(); clientConfig.setClusterName("hello-world"); clientConfig.getSecurityConfig().setUsernamePasswordIdentityConfig("member1","s3crEtPassword*"); HazelcastClient.newHazelcastClient(clientConfig); } } javaCopy__ ``` -------------------------------- ### C# client authentication setup Source: https://docs.hazelcast.com/hazelcast/5.7/getting-started/authenticate-client-tutorial Create a C# client with username/password credentials. Requires installing the latest C Sharp client library. ```csharp var username = "member1"; var password = "s3crEtPassword*"; var options = new HazelcastOptionsBuilder(); .With(o => { o.Authentication.ConfigureUsernamePasswordCredentials(username, password); }) .Build(); var client = await HazelcastClientFactory.StartNewClientAsync(options); csCopy__ ``` -------------------------------- ### Create and use a MultiMap with the Go client Source: https://docs.hazelcast.com/hazelcast/5.7/data-structures/multimap Install the Go client library and create a MultiMap, add entries, get values for key 'a', and print the values. ```shell go get github.com/hazelcast/hazelcast-go-client ``` ```go package main import ( "context" "fmt" "log" "math/rand" "time" "github.com/hazelcast/hazelcast-go-client" ) func main() { ctx := context.TODO() client, err := hazelcast.StartNewClient(ctx) if err != nil { log.Fatal(err) } rand.Seed(time.Now().Unix()) mapName := fmt.Sprintf("sample-%d", rand.Int()) m, err := client.GetMultiMap(ctx, mapName) if err != nil { log.Fatal(err) } success, err := m.Put(ctx, "a", "1") if err != nil { log.Fatal(err) } if !success { log.Fatal("multi-map put operation failed") } success, err = m.Put(ctx, "a", "2") if err != nil { log.Fatal(err) } if !success { log.Fatal("multi-map put operation failed") } success, err := m.Put(ctx, "b", "1") if err != nil { log.Fatal(err) } if !success { log.Fatal("multi-map put operation failed") } values, err := m.Get(ctx, "a") if err != nil { log.Fatal(err) } fmt.Printf("%#v", values) } ``` -------------------------------- ### Initialize Go module Source: https://docs.hazelcast.com/hazelcast/5.7/clients/go-client-getting-started Initializes a new Go module named 'example'. ```bash go mod init example ``` -------------------------------- ### Install godoc with go get Source: https://docs.hazelcast.com/hazelcast/5.7/clients/go Installs godoc, which is not installed by default with the base Go distribution, using the go get command. ```bash go get -u golang.org/x/tools/...` ``` -------------------------------- ### Install Hazelcast Go client with go get Source: https://docs.hazelcast.com/hazelcast/5.7/clients/go Installs the Hazelcast Go client as a dependency in a Go module-enabled project. ```text go get github.com/hazelcast/hazelcast-go-client@latest ``` -------------------------------- ### Start tutorial environment with Docker Compose Source: https://docs.hazelcast.com/hazelcast/5.7/data-structures/vector-search-tutorial Starts the Hazelcast tutorial environment in detached mode. ```bash docker compose up -d ``` -------------------------------- ### GET license response 200 Source: https://docs.hazelcast.com/hazelcast/5.7/maintain-cluster/rest-api-swagger Example response body for the GET /hazelcast/rest/api/v1/cluster/license endpoint when the license is retrieved successfully (HTTP 200). ```json { "expirationTimeMs": 4097606399999, "maxNodeCountAllowed": 99, "allowedTieredStoreSize": 0, "allowedNativeMemorySize": 100, "allowedTpcCores": 0, "keyHash": "9ZAG+TXHy0PrAEakoikYri8WNTFeaJYMeLvsGavEp48=", "features": [ "Management Center", "Clustered JMX", "Clustered REST", "Security", "WAN Replication", "High Density Memory", "Persistence", "Rolling Upgrade", "Cluster Client Filtering", "CP Subsystem Persistence" ] } ``` -------------------------------- ### Create and enter project directory Source: https://docs.hazelcast.com/hazelcast/5.7/clients/nodejs-client-getting-started Creates and navigates into a new directory for the Hazelcast Node.js client example project. ```bash mkdir hazelcast-nodejs-example cd hazelcast-nodejs-example ``` -------------------------------- ### Java SpyMemcached client example Source: https://docs.hazelcast.com/hazelcast/5.7/clients/memcache Java client example using SpyMemcached. It connects to two members and performs a set with a 3600-second expiration and a get. ```java MemcachedClient client = new MemcachedClient( AddrUtil.getAddresses( "10.20.17.1:5701 10.20.17.2:5701" ) ); client.set( "key1", 3600, "value1" ); System.out.println( client.get( "key1" ) ); ``` -------------------------------- ### Run the Go client example Source: https://docs.hazelcast.com/hazelcast/5.7/clients/go-client-getting-started Runs the Go script to verify the connection to your Hazelcast cluster. ```bash go run example.go ``` -------------------------------- ### GET log-level response example Source: https://docs.hazelcast.com/hazelcast/5.7/maintain-cluster/rest-api-swagger Response body for a successful GET request to /hazelcast/rest/api/v1/cluster/log-level. The logLevel field contains the current log level, e.g., INFO. ```json { "logLevel": "INFO" } ``` -------------------------------- ### Start Hazelcast 4.2.7 source cluster on 127.0.0.1:5701 Source: https://docs.hazelcast.com/hazelcast/5.7/migrate/data-migration-tool Example command to start a version 4.2.7 source cluster on IP address 127.0.0.1 and port 5701. ```shell docker run -p 127.0.0.1:5701:5701 -e HZ_CLUSTERNAME=source hazelcast/hazelcast:4.2.7 ``` -------------------------------- ### Create and enter project directory Source: https://docs.hazelcast.com/hazelcast/5.7/clients/python-client-getting-started Creates a new folder and navigates into it for the Hazelcast Python client example. ```bash mkdir hazelcast-python-example cd hazelcast-python-example ``` -------------------------------- ### Keystore file name Source: https://docs.hazelcast.com/hazelcast/5.7/clients/csharp-client-getting-started Lists the keystore file needed for the tutorial, which should be extracted into the project directory. ```bash client.pfx ``` -------------------------------- ### Get map proxy with blocking() Source: https://docs.hazelcast.com/hazelcast/5.7/clients/python-client-getting-started Returns a map proxy object for the 'cities' map. If the map doesn't exist, it is automatically created. The blocking() method provides synchronous calls, suitable for getting started. ```python cities_map = client.get_map('cities').blocking() pythonCopy__ ``` -------------------------------- ### Second Consumer Output Source: https://docs.hazelcast.com/hazelcast/5.7/data-structures/queue Example output from the second consumer when it is started, showing consumed item numbers. ```text ... Consumed 14 Consumed 16 Consumed 18 ... ``` -------------------------------- ### Create example.cpp with Hazelcast C++ client Source: https://docs.hazelcast.com/hazelcast/5.7/clients/cpp-client-getting-started This code creates a Hazelcast client with default configuration, sets the cluster name and discovery token, configures SSL using CA, certificate, and key files, connects to the cluster, prints a welcome message, and shuts down. Replace placeholders like , , and with your actual values. The SSL files ca.pem, cert.pem, and key.pem must be present in the working directory. ```cpp #include #include int main(int argc, char** argv) { hazelcast::client::client_config config; // Cluster Name and Token config.set_cluster_name(""); auto& cloud_configuration = config.get_network_config().get_cloud_config(); cloud_configuration.enabled = true; cloud_configuration.discovery_token = ""; // configure SSL boost::asio::ssl::context ctx(boost::asio::ssl::context::tlsv12); try { ctx.load_verify_file("ca.pem"); ctx.use_certificate_file("cert.pem", boost::asio::ssl::context::pem); ctx.set_password_callback( [&](std::size_t max_length, boost::asio::ssl::context::password_purpose purpose) { return ""; }); ctx.use_private_key_file("key.pem", boost::asio::ssl::context::pem); } catch (std::exception& e) { std::cerr << "You should copy ca.pem, cert.pem and key.pem files to " "the working directory, exception cause " << e.what() << std::endl; exit(EXIT_FAILURE); } config.get_network_config().get_ssl_config().set_context(std::move(ctx)); // Connect to your Hazelcast Cluster auto client = hazelcast::new_client(std::move(config)).get(); // take actions std::cout << "Welcome to your Hazelcast Cluster!" << std::endl; // Shutdown the client connection client.shutdown().get(); } ``` -------------------------------- ### Add Hazelcast Helm repository and install chart Source: https://docs.hazelcast.com/hazelcast/5.7/kubernetes/helm-hazelcast-chart Adds the Hazelcast Helm chart repository and installs the chart with the release name 'my-release'. Run 'helm repo add' again if you previously added the repo to get the latest charts. ```shell helm repo add hazelcast https://hazelcast-charts.s3.amazonaws.com/ helm repo update helm install my-release hazelcast/hazelcast ``` -------------------------------- ### Create project folder Source: https://docs.hazelcast.com/hazelcast/5.7/clients/csharp-client-getting-started Creates a new folder and navigates into it for the Hazelcast .NET client example project. ```bash mkdir hazelcast-csharp-example cd hazelcast-csharp-example ``` -------------------------------- ### Hazelcast SQL API Java client example with Compact serialization Source: https://docs.hazelcast.com/hazelcast/5.7/clients/java-client-getting-started Java client example that connects to a Hazelcast cluster using SSL and Compact serialization, creates a mapping for a map, and inserts city data. The snippet is truncated at the start of the insertCities method; the full example continues with the delete and insert queries. ```java import java.util.Properties; import com.hazelcast.client.HazelcastClient; import com.hazelcast.client.config.ClientConfig; import com.hazelcast.config.SSLConfig; import com.hazelcast.core.HazelcastInstance; import com.hazelcast.nio.serialization.compact.CompactReader; import com.hazelcast.nio.serialization.compact.CompactSerializer; import com.hazelcast.nio.serialization.compact.CompactWriter; import com.hazelcast.sql.SqlResult; import com.hazelcast.sql.SqlRow; import com.hazelcast.sql.SqlService; public class Example { public final class CityDTO { private final String country; private final String city; private final int population; public CityDTO(String country, String city, int population) { this.country = country; this.city = city; this.population = population; } public String getCountry() { return country; } public String getCity() { return city; } public int getPopulation() { return population; } } public final class CitySerializer implements CompactSerializer { @Override public CityDTO read(CompactReader compactReader) { return new CityDTO(compactReader.readString("country"), compactReader.readString("city"), compactReader.readInt32("population")); } @Override public void write(CompactWriter compactWriter, CityDTO city) { compactWriter.writeString("country", city.getCountry()); compactWriter.writeString("city", city.getCity()); compactWriter.writeInt32("population", city.getPopulation()); } @Override public String getTypeName() { return "CityDTO"; } @Override public Class getCompactClass() { return CityDTO.class; } } public static void main(String[] args) throws Exception { ClientConfig config = new ClientConfig(); // Connection details for cluster config.setClusterName(""); config.getNetworkConfig().getCloudConfig() .setDiscoveryToken("") .setEnabled(true); ClassLoader classLoader = Example.class.getClassLoader(); Properties props = new Properties(); props.setProperty("javax.net.ssl.keyStore", classLoader.getResource("client.keystore").toURI().getPath()); props.setProperty("javax.net.ssl.keyStorePassword", ""); props.setProperty("javax.net.ssl.trustStore", classLoader.getResource("client.truststore").toURI().getPath()); props.setProperty("javax.net.ssl.trustStorePassword", ""); config.getNetworkConfig().setSSLConfig(new SSLConfig().setEnabled(true).setProperties(props)); // Register Compact Serializers config.getSerializationConfig().getCompactSerializationConfig() .addSerializer(new Example().new CitySerializer()); // Connect to your Hazelcast Cluster HazelcastInstance client = HazelcastClient.newHazelcastClient(config); try { // Create a map on the cluster createMapping(client.getSql()); // Add some data insertCities(client); // Output the data fetchCities(client.getSql()); } finally { client.shutdown(); } } private static void createMapping(SqlService sqlService) { // See: https://docs.hazelcast.com/hazelcast/latest/sql/mapping-to-maps#compact-objects System.out.print("\nCreating mapping..."); String mappingSql = "" + "CREATE OR REPLACE MAPPING cities(" + " __key INT," + " country VARCHAR," + " city VARCHAR," + " population INT" + ") TYPE IMap" + " OPTIONS (" + " 'keyFormat' = 'int'," + " 'valueFormat' = 'compact'," + " 'valueCompactTypeName' = 'Example$CityDTO'" + " )"; try (SqlResult ignored = sqlService.execute(mappingSql)) { System.out.print("OK."); } catch (Exception ex) { System.out.print("FAILED. " + ex.getMessage()); } } private static void insertCities(HazelcastInstance client) { try { String deleteQuery = "DELETE from cities"; ``` -------------------------------- ### First Consumer Output Source: https://docs.hazelcast.com/hazelcast/5.7/data-structures/queue Example output from the first consumer when a second consumer is started, showing consumed item numbers. ```text ... Consumed 13 Consumed 15 Consumed 17 ... ``` -------------------------------- ### Start Hazelcast with bin/hz-start Source: https://docs.hazelcast.com/hazelcast/5.7/pipelines/cdc Starts Hazelcast. After running this command, wait for output indicating that Hazelcast is up. ```bash bin/hz-start bashCopy__ ``` -------------------------------- ### Node.js client authentication setup Source: https://docs.hazelcast.com/hazelcast/5.7/getting-started/authenticate-client-tutorial Create a Node.js client with username/password credentials. Requires installing hazelcast-client via npm. ```javascript const config = { security: { usernamePassword: { username: 'member1', password: 's3crEtPassword*' } } }; const client = await Client.newHazelcastClient(cfg); javascriptCopy__ ``` -------------------------------- ### NodeLifecycleListener class implementing LifecycleListener Source: https://docs.hazelcast.com/hazelcast/5.7/events/cluster-events Example listener class that prints lifecycle events to stderr. The listener is local to an individual member and notifies the application about events such as STARTING, STARTED, SHUTTING_DOWN, SHUTDOWN, MERGING, MERGED, CLIENT_CONNECTED, CLIENT_DISCONNECTED, and CLIENT_CHANGED_CLUSTER. ```java public class NodeLifecycleListener implements LifecycleListener { @Override public void stateChanged(LifecycleEvent event) { System.err.println(event); } } ``` -------------------------------- ### Create project directory Source: https://docs.hazelcast.com/hazelcast/5.7/clients/java-client-getting-started Creates and navigates into a new directory for the Hazelcast Java client example project. ```bash mkdir hazelcast-java-example cd hazelcast-java-example ``` -------------------------------- ### Start Kafka broker with Docker Source: https://docs.hazelcast.com/hazelcast/5.7/sql/learn-sql Runs a Kafka broker container on the hazelcast-network. Use --platform=linux/amd64 on M1 Macs if you get an error. ```bash docker run --name kafka --network hazelcast-network --rm hazelcast/hazelcast-quickstart-kafka ``` -------------------------------- ### Full example: Connect, create map, add entries, and iterate Source: https://docs.hazelcast.com/hazelcast/5.7/clients/python-client-getting-started Complete example showing how to connect to a Hazelcast cluster with SSL, create a map, clear it, add entries, retrieve them, and shut down the client. The map is created automatically if it doesn't exist. ```python import hazelcast import os #################################### # Connect to your Hazelcast Cluster client = hazelcast.HazelcastClient( # Cluster Name and Token cluster_name="", cloud_discovery_token="", # configure SSL ssl_enabled=True, ssl_cafile=os.path.abspath("ca.pem"), ssl_certfile=os.path.abspath("cert.pem"), ssl_keyfile=os.path.abspath("key.pem"), ssl_password="", ) # Create a map on the cluster cities_map = client.get_map('cities').blocking() # Clear the map cities_map.clear() # Add some data cities_map.put(1, "London") cities_map.put(2, "New York") cities_map.put(3, "Tokyo") # Output the data entries = cities_map.entry_set() for key, value in entries: print(f"{key} -> {value}") # Shutdown the client connection client.shutdown() pythonCopy__ ``` -------------------------------- ### Possible output for distinct with grouping Source: https://docs.hazelcast.com/hazelcast/5.7/pipelines/transforms Possible output of the distinct-with-grouping example. Hazelcast can choose any of the names starting with 'j', so the output may vary. ```text 14:05:29.382 [ INFO] [c.h.j.i.c.W.loggerSink#0] joe 14:05:29.383 [ INFO] [c.h.j.i.c.W.loggerSink#0] maria ``` -------------------------------- ### Example instance tracking output for a client instance Source: https://docs.hazelcast.com/hazelcast/5.7/maintain-cluster/monitoring Example output file content when running a client instance. The JSON contains product, version, pid, mode, start_timestamp, and licensed fields. ```json {"product":"Hazelcast", "version":5.7, "pid":27746, "mode":"client", "start_timestamp":1595851430741, "licensed":0} ``` -------------------------------- ### Install with values file Source: https://docs.hazelcast.com/hazelcast/5.7/kubernetes/helm-hazelcast-enterprise-chart Installs the chart using a YAML file that specifies parameter values. ```shell helm install my-release hazelcast/hazelcast-enterprise -f values.yaml ``` -------------------------------- ### Sample pipeline output Source: https://docs.hazelcast.com/hazelcast/5.7/pipelines/python Example log output from the pipeline showing square roots of numbers. The output appears in the window where Hazelcast was started. ```text 15:41:58.411 [ INFO] ... sqrt(0) = 0.00 15:41:58.411 [ INFO] ... sqrt(1) = 1.00 15:41:58.411 [ INFO] ... sqrt(2) = 1.41 15:41:58.411 [ INFO] ... sqrt(3) = 1.73 15:41:58.411 [ INFO] ... sqrt(4) = 2.00 15:41:58.411 [ INFO] ... sqrt(5) = 2.24 15:41:58.411 [ INFO] ... sqrt(6) = 2.45 15:41:58.411 [ INFO] ... sqrt(7) = 2.65 ``` -------------------------------- ### Hazelcast startup output Source: https://docs.hazelcast.com/hazelcast/5.7/pipelines/cdc-join Example output from bin/hz-start indicating Hazelcast is up and the member has joined the cluster. ```text Members {size:1, ver:1} [ Member [192.168.1.5]:5701 - e7c26f7c-df9e-4994-a41d-203a1c63480e this ] ``` -------------------------------- ### Start PostgreSQL container with Debezium example image Source: https://docs.hazelcast.com/hazelcast/5.7/pipelines/cdc-postgres Runs a Docker container with the debezium/example-postgres:1.2 image, preconfigured with an inventory database. The command maps port 5432 and sets environment variables for the database name, user, and password. ```bash docker run -it --rm --name postgres -p 5432:5432 \ -e POSTGRES_DB=postgres -e POSTGRES_USER=postgres \ -e POSTGRES_PASSWORD=postgres debezium/example-postgres:1.2 bashCopy__ ``` -------------------------------- ### Basic usage output: client lifecycle and personnel_map entries Source: https://docs.hazelcast.com/hazelcast/5.7/clients/cplusplus Output from running the basic usage example. It shows the client lifecycle events (STARTING, STARTED, CLIENT_CONNECTED), authentication with server version 4.2, the cluster members list, and the printed IT personnel entries from the personnel_map. ```text 18/11/2022 21:22:26.835 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/spi.cpp:375] (Wed Nov 18 17:25:23 2022 +0300:3b11bea) LifecycleService::LifecycleEvent Client (75121987-12fe-4ede-860d-59222e6d3ef2) is STARTING 18/11/2022 21:22:26.835 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/spi.cpp:379] (Wed Nov 18 17:25:23 2022 +0300:3b11bea) LifecycleService::LifecycleEvent STARTING 18/11/2022 21:22:26.835 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/spi.cpp:387] LifecycleService::LifecycleEvent STARTED 18/11/2022 21:22:26.837 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/network.cpp:587] Trying to connect to Address[10.212.1.117:5701] 18/11/2022 21:22:26.840 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/spi.cpp:411] LifecycleService::LifecycleEvent CLIENT_CONNECTED 18/11/2022 21:22:26.840 INFO: [139868602337152] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/network.cpp:637] Authenticated with server Address[:5701]:a27f900e-b1eb-48be-aa46-d7a4922ef704, server version: 4.2, local address: Address[10.212.1.116:37946] 18/11/2022 21:22:26.841 INFO: [139868341360384] client_1[dev] [5.x.x] [/home/ihsan/hazelcast-cpp-client/hazelcast/src/hazelcast/client/spi.cpp:881] Members [1] { Member[10.212.1.117]:5701 - a27f900e-b1eb-48be-aa46-d7a4922ef704 } Added IT personnel. Logging all known personnel Amanda is in IT department Olly is in IT department Rob is in IT department Copy__ ```