Giter Club home page Giter Club logo

edgex-examples's Introduction

Official EdgeX Foundry Examples

Go Report Card GitHub Pull Requests GitHub Contributors GitHub Committers GitHub Commit Activity

Warning
The main branch of this repository contains work-in-progress examples for the upcoming release, and is not guaranteed to be stable or work with previous releases.

Examples that work with the latest EdgeX release can be found at Releases. Navigate to the latest (x.y) tag.

The purpose of this repository is to provide centralized example and sample code for EdgeX adopters and users. The folders help organize the examples to make it easier to find samples associated to various parts of EdgeX.

Example "Rules"

  • The TSC will review these examples with each release.
  • The project does maintain the code in this repository (please file an issue for any broken code).
  • An example is dropped when it is no longer used, maintained, or in sync with the current release as deemed by the TSC.
  • Approval of the TSC is required for new folders in this repository.
  • SDKs located in their respective repositories can also contain a small example or sample code folder to show developers how to use the SDK or SDK feature.
    • SDK examples include how to create a simple app service or device service.
    • SDK examples may also provide a how-to-guide on particular features (ex: how to implement an app function or how to handle automatic / dynamic provisioning).
    • SDK examples should remain small so as not to bloat the services created from the SDK.
    • Having the code with the SDK encourages the SDK maintainers to keep these up to date - critical for adoption.
    • The project has the goal to have automated testing in the future against examples in the SDKs (which is easier to do when the code is in the same repository as the SDK).
  • Holding (http://github.com/edgexfoundry-holding) will revert to a “staging” area for code. Put examples in holding while under review.
    • Like other project code, the goal of example code in holding would be to have it eventually approved and moved to this repository.
  • EdgeX developers and writers should minimize examples in the docs and reference the code in this repo instead.
  • TSC members are automatically committers to the repository.
  • TSC members are automatically committers to the repository.
  • TSC members can request committer rights for another contributor see committer approval process.
    • Like other repositories, it requires the approval of 2 other TSC members.
  • Examples will be tagged, as the project moves forward.
    • The project will update this READMe for how to handle the examples code with regard to releases
  • The example code in this repository is not tested as part of the CI/CD process.
    • Examples are tested by developers but are provided without regular (nightly) testing as with the rest of EdgeX.
  • Modules in these examples are exempt from 3rd party vetting per https://wiki.edgexfoundry.org/pages/viewpage.action?pageId=46760301.

Example Folder Organization

  • application-services – example app services to get data to cloud or enterprise systems
  • analytics – examples around rules engine, or other analytics package integration or use
  • device-services – portions of a device service or a device service that would not typically be used in production.
  • deployment – Kubernetes, swarm, etc. deployment and orchestration examples
  • hackathon-projects – projects collected during official EdgeX hackathons (these may be more temporal as they will likely not be maintained)
  • miscellaneous – examples/samples that don’t belong in the other folders. Example scripts, makefiles, etc.
  • platform-solutions – examples of getting EdgeX (or a portion of EdgeX) up and running on specific platforms like Raspberry Pi, Arduino
  • product-integration – examples outlining how to integrate with or use EdgeX with other products whether proprietary or open (examples might include ObjectBox, Redis Streams, Foghorn, etc.)

edgex-examples's People

Contributors

adam-intel avatar ajcasagrande avatar alexcuse avatar bindurao2018 avatar bnevis-i avatar christiandarr-personal avatar cloudxxx8 avatar drkfmorton avatar dvintel avatar eshenayo avatar jim-wang-intel avatar jpwhitemn avatar judehung avatar kurokobo avatar lenny-goodell avatar mightynerderic avatar presatish avatar rsdmike avatar shantanoo-desai avatar soda480 avatar vli11 avatar vyshali-chitikeshi avatar weichou1229 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

edgex-examples's Issues

Failed loading x509 data without error detail

In the aws-export directory, I met "Failed loading x509 data" issue, Could you tell me how to handle it?

1. I change the config like this:
`LogLevel = 'DEBUG'

[Service]
BootTimeout = '30s'
ClientMonitor = '15s'
CheckInterval = '10s'
Host = 'localhost'
Port = 48095
Protocol = 'http'
ReadMaxLimit = 100
StartupMsg = 'AWS IoT Export Service'
Timeout = '5s'

[Registry]
Host = 'localhost'
Port = 8500
Type = 'consul'

[Clients]
[Clients.CoreData]
Protocol = 'http'
Host = 'localhost'
Port = 48080
[Clients.Logging]
Protocol = "http"
Host = "localhost"
Port = 48061

[MessageBus]
Type = 'zero'
[MessageBus.PublishHost]
Host = '*'
Port = 5564
Protocol = 'tcp'
[MessageBus.SubscribeHost]
Host = 'localhost'
Port = 5563
Protocol = 'tcp'

[Logging]
EnableRemote = false
File = ''

[Binding]
Type="messagebus"
SubscribeTopic="events"
PublishTopic=""

[ApplicationSettings]
AwsIoTMQTTHost = "xxxxxxxxxxxxx.iot.eu-west-1.amazonaws.com"
AwsIoTMQTTPort = "8883"
awsIoTThingName = "testThing"
MQTTCert = "./certs/user.client.crt"
MQTTKey = "./certs/user.client.key"
SkipCertVerify = "false"
PersistOnError = "false"
topic = "test"
AwsDeviceNames = ""
`
2. I changed the cert and key content in the cert directory

3. I ran make docker and generated a docker image

4. I ran aws-export service using make run command with docker-compose file

Here is my docker logs:

ubuntu@ip-10-0-0-23:~/edgex-compose$ docker logs -f 51dedebb46d5
level=INFO ts=2021-04-01T06:15:40.332197084Z app=AWSExport source=sdk.go:358 msg="Starting AWSExport 0.0.0 "
level=INFO ts=2021-04-01T06:15:40.335575026Z app=AWSExport source=config.go:193 msg="Loaded configuration from /res/configuration.toml"
level=INFO ts=2021-04-01T06:15:40.338651221Z app=AWSExport source=variables.go:394 msg="Variables override of 'MessageBus.SubscribeHost.Host' by environment variable: MESSAGEBUS_SUBSCRIBEHOST_HOST=edgex-core-data"
level=INFO ts=2021-04-01T06:15:40.338794039Z app=AWSExport source=variables.go:394 msg="Variables override of 'Clients.CoreData.Host' by environment variable: CLIENTS_COREDATA_HOST=edgex-core-data"
level=INFO ts=2021-04-01T06:15:40.338890742Z app=AWSExport source=variables.go:394 msg="Variables override of 'Service.Host' by environment variable: SERVICE_HOST=app-service-aws-iot-export"
level=INFO ts=2021-04-01T06:15:40.339096137Z app=AWSExport source=variables.go:394 msg="Variables override of 'Service.Port' by environment variable: SERVICE_PORT=48102"
level=INFO ts=2021-04-01T06:15:40.339235487Z app=AWSExport source=variables.go:394 msg="Variables override of 'Registry.Host' by environment variable: REGISTRY_HOST=edgex-core-consul"
level=INFO ts=2021-04-01T06:15:40.341168831Z app=AWSExport source=config.go:168 msg="Using Configuration provider (consul) from: http://edgex-core-consul:8500 with base path of edgex/appservices/1.0/AWSExport"
level=INFO ts=2021-04-01T06:15:40.815852796Z app=AWSExport source=config.go:304 msg="Configuration has been pushed to into Configuration Provider (5 envVars overrides applied)"
level=ERROR ts=2021-04-01T06:15:40.815917592Z app=AWSExport source=logger.go:74 msg="logTarget cannot be blank, using stdout only"
level=INFO ts=2021-04-01T06:15:40.816078909Z app=AWSExport source=registry.go:80 msg="Using Registry (consul) from http://edgex-core-consul:8500"
level=INFO ts=2021-04-01T06:15:40.884991554Z app=AWSExport source=version.go:81 version=0.0.0 msg="Skipping version compatibility check for SDK Beta version or running in debugger"
level=INFO ts=2021-04-01T06:15:40.885061181Z app=AWSExport source=server.go:284 msg="Registering standard routes..."
level=INFO ts=2021-04-01T06:15:40.885142031Z app=AWSExport source=telemetry.go:79 msg="Starting CPU Usage Average loop"
level=INFO ts=2021-04-01T06:15:40.885227967Z app=AWSExport source=configupdates.go:51 msg="Waiting for App Service configuration updates..."
level=INFO ts=2021-04-01T06:15:40.885381521Z app=AWSExport source=controller.go:63 msg="Registering standard V2 routes..."
level=INFO ts=2021-04-01T06:15:40.885575593Z app=AWSExport source=sdk.go:438 msg="Service started in: 553.490083ms"
level=DEBUG ts=2021-04-01T06:15:40.885597552Z app=AWSExport source=aws-iot-mqtt.go:57 msg=xxxxxxxxxxxxxx.iot.eu-west-1.amazonaws.com
level=DEBUG ts=2021-04-01T06:15:40.8856066Z app=AWSExport source=aws-iot-mqtt.go:57 msg=8883
level=DEBUG ts=2021-04-01T06:15:40.885614616Z app=AWSExport source=aws-iot-mqtt.go:57 msg=testThing
level=DEBUG ts=2021-04-01T06:15:40.885623586Z app=AWSExport source=aws-iot-mqtt.go:57 msg=./certs/user.client.crt
level=DEBUG ts=2021-04-01T06:15:40.88563452Z app=AWSExport source=aws-iot-mqtt.go:57 msg=./certs/user.client.key
level=DEBUG ts=2021-04-01T06:15:40.885648162Z app=AWSExport source=aws-iot-mqtt.go:57 msg=test
level=DEBUG ts=2021-04-01T06:15:40.885656548Z app=AWSExport source=aws-iot-mqtt.go:57 msg=
level=DEBUG ts=2021-04-01T06:15:40.885676788Z app=AWSExport source=aws-iot-mqtt.go:57 msg=false
level=DEBUG ts=2021-04-01T06:15:40.885685195Z app=AWSExport source=aws-iot-mqtt.go:57 msg=false
level=DEBUG ts=2021-04-01T06:15:40.885698131Z app=AWSExport source=aws-iot-mqtt.go:116 msg="Read SkipCertVerify from configuration: false"
level=DEBUG ts=2021-04-01T06:15:40.885710838Z app=AWSExport source=aws-iot-mqtt.go:117 msg="Read PersistOnError from configuration: false"
level=DEBUG ts=2021-04-01T06:15:40.885724714Z app=AWSExport source=main.go:41 msg="Device names read []\n"
level=DEBUG ts=2021-04-01T06:15:40.885733026Z app=AWSExport source=aws-iot-mqtt.go:128 msg=test
level=ERROR ts=2021-04-01T06:15:40.886910545Z app=AWSExport source=mqtt.go:87 msg="Failed loading x509 data"
level=INFO ts=2021-04-01T06:15:40.886965073Z app=AWSExport source=sdk.go:473 msg="EdgeX MessageBus trigger selected"
level=INFO ts=2021-04-01T06:15:40.88697895Z app=AWSExport source=messaging.go:47 msg="Initializing Message Bus Trigger for 'zero'"
level=INFO ts=2021-04-01T06:15:40.886994651Z app=AWSExport source=messaging.go:61 msg="Subscribing to topic: 'events' @ tcp://edgex-core-data:5563"
level=INFO ts=2021-04-01T06:15:40.892294951Z app=AWSExport source=messaging.go:71 msg="Publishing to topic: '' @ tcp://*:5564"
level=INFO ts=2021-04-01T06:15:40.89233695Z app=AWSExport source=sdk.go:186 msg="StoreAndForward disabled. Not running retry loop."
level=INFO ts=2021-04-01T06:15:40.892348657Z app=AWSExport source=sdk.go:189 msg="AWS IoT Export Service"
level=INFO ts=2021-04-01T06:15:40.892377722Z app=AWSExport source=server.go:359 msg="Starting HTTP Web Server on address :48102"
level=DEBUG ts=2021-04-01T06:16:03.0181993Z app=AWSExport source=runtime.go:59 msg="Processing message: 4 Transforms"
level=DEBUG ts=2021-04-01T06:16:03.018658138Z app=AWSExport source=filter.go:44 msg="Filtering by DeviceID"
level=DEBUG ts=2021-04-01T06:16:03.018906727Z app=AWSExport source=conversion.go:27 msg="Transforming to AWS format"
{"Bool":"true"}
level=DEBUG ts=2021-04-01T06:16:03.018959715Z app=AWSExport source=main.go:75 msg="Printed to console"
level=DEBUG ts=2021-04-01T06:16:07.711648795Z app=AWSExport source=runtime.go:59 msg="Processing message: 4 Transforms"
level=DEBUG ts=2021-04-01T06:16:07.711861308Z app=AWSExport source=filter.go:44 msg="Filtering by DeviceID"
level=DEBUG ts=2021-04-01T06:16:07.712361311Z app=AWSExport source=conversion.go:27 msg="Transforming to AWS format"
{"Int8":"-47"}
level=DEBUG ts=2021-04-01T06:16:07.71251767Z app=AWSExport source=main.go:75 msg="Printed to console"
level=DEBUG ts=2021-04-01T06:16:07.721416616Z app=AWSExport source=runtime.go:59 msg="Processing message: 4 Transforms"
level=DEBUG ts=2021-04-01T06:16:07.721914373Z app=AWSExport source=runtime.go:59 msg="Processing message: 4 Transforms"
level=DEBUG ts=2021-04-01T06:16:07.722330669Z app=AWSExport source=filter.go:44 msg="Filtering by DeviceID"
level=DEBUG ts=2021-04-01T06:16:07.722426479Z app=AWSExport source=conversion.go:27 msg="Transforming to AWS format"
{"Int64":"-6918581331442291152"}
level=DEBUG ts=2021-04-01T06:16:07.723091104Z app=AWSExport source=main.go:75 msg="Printed to console"
level=DEBUG ts=2021-04-01T06:16:07.722712633Z app=AWSExport source=filter.go:44 msg="Filtering by DeviceID"
level=DEBUG ts=2021-04-01T06:16:07.725779133Z app=AWSExport source=conversion.go:27 msg="Transforming to AWS format"

helm deployment: rules-engine service omits kuiper-connections and kuipers-sources volumes

🐞 Bug Report

Affected Services [REQUIRED]

EdgeX helm chart

Description and Minimal Reproduction [REQUIRED]

The secure deployment of the helm chart omits the kuiper-connections and kuiper-sources volumes

From edgex-compose's add-secure-mqtt-messagebus.yml:

  rulesengine:
    entrypoint: [ "/edgex-init/kuiper_wait_install.sh" ]
    env_file:
      - common-sec-stage-gate.env
    volumes:
      - kuiper-sources:/kuiper/etc/sources:z
      - kuiper-connections:/kuiper/etc/connections:z
      - edgex-init:/edgex-init:ro,z
    depends_on:
      - security-bootstrapper
      - secretstore-setup
      - database

The above volumes are missing from the EdgeX helm chart.

Http trigger can not work

Hi all,
I tried to use http titgger, but it can not work.
I used custom simple-filter-xml with app-functions-sdk-go 2.2.0.
And I followed this https://docs.edgexfoundry.org/2.2/microservices/application/Triggers/#http-trigger, but I do not know what is the port.

Designating an HTTP trigger will allow the pipeline to be triggered by a RESTful POST call to http://[host]:[port]/api/v2/trigger/.

Is it the container's port or Command service's port ?

When I tryied to post by http://[host]:{simple-filter-xml's port }/api/v2/trigger, the error response was "connect ECONNREFUSED".

configuration.toml

[Writable]
LogLevel = "INFO"
  [Writable.StoreAndForward]
  Enabled = false
  RetryInterval = "5m"
  MaxRetryCount = 10
  [Writable.InsecureSecrets]
    [Writable.InsecureSecrets.DB]
    path = "redisdb"
      [Writable.InsecureSecrets.DB.Secrets]
      username = ""
      password = ""

[Service]
HealthCheckInterval = "10s"
Host = "localhost"
Port = 59780 # Adjust if running multiple examples at the same time to avoid duplicate port conflicts
ServerBindAddr = "" # if blank, uses default Go behavior https://golang.org/pkg/net/#Listen
StartupMsg = "This is a sample Filter/XML Transform Application Service"
RequestTimeout = "30s"
MaxRequestSize = 0
MaxResultCount = 0

[Registry]
Host = "localhost"
Port = 8500
Type = "consul"

# Database is require when Store and Forward is enabled
[Database]
Type = "redisdb"
Host = "localhost"
Port = 6379
Timeout = "30s"

# SecretStore is required when Store and Forward is enabled and running with security
# so Database credentials can be pulled from Vault.
# Note when running in docker from compose file set the following environment variables:
#   - SecretStore_Host: edgex-vault
[SecretStore]
Type = "vault"
Host = "localhost"
Port = 8200
Path = "app-simple-filter-xml/"
Protocol = "http"
TokenFile = "/tmp/edgex/secrets/app-simple-filter-xml/secrets-token.json"
RootCaCertPath = ""
ServerName = ""
  [SecretStore.Authentication]
  AuthType = "X-Vault-Token"

[Clients]
  [Clients.core-metadata]
  Protocol = "http"
  Host = "localhost"
  Port = 59881

# Choose either the http trigger or edgex-messagebus trigger

[Trigger]
Type="http"

#[Trigger]
#Type="edgex-messagebus"
#  [Trigger.EdgexMessageBus]
#  Type = "redis"
#    [Trigger.EdgexMessageBus.SubscribeHost]
#    Host = "localhost"
#    Port = 6379
#    Protocol = "redis"
#    SubscribeTopics="edgex/events/#"
#    [Trigger.EdgexMessageBus.PublishHost]
#    Host = "localhost"
#    Port = 6379
#    Protocol = "redis"
#    PublishTopic="example"

# App Service specifc simple settings
# Great for single string settings. For more complex structured custom configuration
# See https://docs.edgexfoundry.org/2.0/microservices/application/AdvancedTopics/#custom-configuration
[ApplicationSettings]
DeviceNames = "AX-3D"

Provide example C device service

🚀 Feature Request

Relevant Package [REQUIRED]

This feature request is for...

edgex-examples

Description [REQUIRED]

Although a number of examples are included in device-sdk-c, these do not include the build infrastructure and other files which would make a good starting point for developing an EdgeX device service in C.

Describe the solution you'd like

Provide a complete device service example - this can be based on the template in device-sdk-c but should include build files, attribution, readme etc.

Describe alternatives you've considered

Modify SSH-based remote device service example for Jakarta

The SSH-based remote device service example fails in Jakarta,
as a secret store token is now required to obtain Consul access.

Modify the example to retrieve the Vault token prior to starting the device service,
and update port forwarding rules to access the necessary services.

Camera Mgmt Example - Auto start EVAM on new camera devices

🚀 Feature Request

Relevant Package [REQUIRED]

This feature request is for the Camera Management app service

Description [REQUIRED]

Currently the example queries Core Metadata for list of camera devices.
When a new camera is added (auto detected) it isn't utilized by EVAM pipeline until manually refreshed list and selected to start a pipeline.

Describe the solution you'd like

App service should subscribe to the new Device System Events so it automatically knows when a new devices has been added and can start a Default EVAM pipeline on the camera stream. This default EVAM pipeline can be a writable custom configuration parameter.

Should probably also auto stop EVAM pipeline when camera device has been deleted and maybe restart the pipeline when the device has been updated (i.e. IP address changed)

Describe alternatives you've considered

Have you considered any alternative solutions or workarounds?

Cloud Export example transform always error with "Unexpected type received"

🐞 Bug Report

Affected Services [REQUIRED]

The issue is located in: application-services/custom/cloud-export-mqtt

Is this a regression? Yes, since conversion to 2.x

Description and Minimal Reproduction [REQUIRED]

Problem is the transform is using the models package rather than the dtos package and get an error when it check the type of the Event received.

Code for the transform should be:

	if data == nil {
		return false, errors.New("No Event Received")
	}

	ctx.LoggingClient().Debug("Transforming to AWS format")

	if event, ok := data.(dtos.Event); ok {
		readings := map[string]interface{}{}

		for _, reading := range event.Readings {
			switch reading.ValueType {
			case common.ValueTypeBinary:
				readings[reading.ResourceName] = reading.BinaryValue
			case common.ValueTypeObject:
				readings[reading.ResourceName] = reading.ObjectValue
			default:
				readings[reading.ResourceName] = reading.Value
			}
		}

		msg, err := json.Marshal(readings)
		if err != nil {
			return false, errors.New(fmt.Sprintf("Failed to transform AWS data: %s", err))
		}

		return true, string(msg)
	}

	return false, errors.New("Unexpected type received")

🔥 Exception or Error

Unexpected type received

🌍 Your Environment

N/A

Camera Mgmt Example - Add documentation on how to ingest EVAM results into EdgeX

🚀 Feature Request

Relevant Package [REQUIRED]

This feature request is for Camera Management app service example

Description [REQUIRED]

EVAM results are published to MQTT but not ingested into EdgeX.

Describe the solution you'd like

Update the README on how to include and configure Device MQTT to receive the results from EVAM so they are ingested into EdgeX. Also include example REST query to pull Events/Reading generated for the EVAM data from Core Data.

Describe alternatives you've considered

Camera Mgmt Example - Connect to MQTT ws on same host

🚀 Feature Request

Relevant Package [REQUIRED]

Camera Mgmt Example

Description [REQUIRED]

Currently it only subscribes to localhost:9001, support the ability to base it off of the url in the address bar

Describe the solution you'd like

If you have a solution in mind, please describe it.

Describe alternatives you've considered

Have you considered any alternative solutions or workarounds?

helm deployment: core-command crash when deployed on Baetyl framework

i try to deploy edgex2.0 on k8s , but the core-command crashed

`level=INFO ts=2022-05-03T03:37:37.920540664Z app=core-command source=variables.go:352 msg="Variables override of 'Startup Duration' by environment variable: EDGEX_STARTUP_DURATION=120"  
level=INFO ts=2022-05-03T03:37:37.921450878Z app=core-command source=config.go:359 msg="Loaded service configuration from /res/configuration.toml"  
level=INFO ts=2022-05-03T03:37:37.922112252Z app=core-command source=variables.go:352 msg="Variables override of 'Clients.core-metadata.Host' by environment variable: CLIENTS_CORE_METADATA_HOST=edgex-core-metadata"
level=INFO ts=2022-05-03T03:37:37.922187853Z app=core-command source=variables.go:352 msg="Variables override of 'Databases.Primary.Host' by environment variable: DATABASES_PRIMARY_HOST=edgex-redis"
level=INFO ts=2022-05-03T03:37:37.922236097Z app=core-command source=variables.go:352 msg="Variables override of 'Registry.Host' by environment variable: REGISTRY_HOST=edgex-core-consul"
level=INFO ts=2022-05-03T03:37:37.922248694Z app=core-command source=variables.go:352 msg="Variables override of 'Service.Host' by environment variable: SERVICE_HOST=edgex-core-command"
level=INFO ts=2022-05-03T03:37:37.922371208Z app=core-command source=config.go:156 msg="Using Config Provider access token of length 0"
level=INFO ts=2022-05-03T03:37:37.922431493Z app=core-command source=config.go:334 msg="Using Configuration provider (consul) from: http://edgex-core-consul:8500 with base path of edgex/core/2.0/core-command"
level=INFO ts=2022-05-03T03:37:37.973392331Z app=core-command source=variables.go:352 msg="Variables override of 'Clients.core-metadata.Host' by environment variable: CLIENTS_CORE_METADATA_HOST=edgex-core-metadata"
level=INFO ts=2022-05-03T03:37:37.973527561Z app=core-command source=variables.go:352 msg="Variables override of 'Databases.Primary.Host' by environment variable: DATABASES_PRIMARY_HOST=edgex-redis"
level=INFO ts=2022-05-03T03:37:37.973555234Z app=core-command source=variables.go:352 msg="Variables override of 'Registry.Host' by environment variable: REGISTRY_HOST=edgex-core-consul"
level=INFO ts=2022-05-03T03:37:37.973584251Z app=core-command source=variables.go:352 msg="Variables override of 'Service.Host' by environment variable: SERVICE_HOST=edgex-core-command"
level=INFO ts=2022-05-03T03:37:37.973695764Z app=core-command source=config.go:494 msg="Configuration has been pulled from Configuration provider (4 envVars overrides applied)"
level=INFO ts=2022-05-03T03:37:37.973758219Z app=core-command source=registry.go:57 msg="Using Registry access token of length 0"
level=INFO ts=2022-05-03T03:37:37.973780185Z app=core-command source=registry.go:73 msg="Using Registry (consul) from http://edgex-core-consul:8500"
level=INFO ts=2022-05-03T03:37:37.987505155Z app=core-command source=telemetry.go:86 msg="Telemetry starting"
level=INFO ts=2022-05-03T03:37:37.987579929Z app=core-command source=httpserver.go:114 msg="Web server starting (edgex-core-command:59882)"
level=INFO ts=2022-05-03T03:37:37.987598358Z app=core-command source=message.go:50 msg="Service dependencies resolved..."
level=INFO ts=2022-05-03T03:37:37.987610149Z app=core-command source=message.go:51 msg="Starting core-command 2.0.0 "
level=INFO ts=2022-05-03T03:37:37.987619381Z app=core-command source=message.go:55 msg="This is the Core Command Microservice"
level=INFO ts=2022-05-03T03:37:37.987637468Z app=core-command source=message.go:58 msg="Service started in: 66.973179ms"
level=ERROR ts=2022-05-03T03:37:37.989088642Z app=core-command source=httpserver.go:126 msg="Web server failed: listen tcp 10.98.134.67:59882: bind: cannot assign requested address"
level=INFO ts=2022-05-03T03:37:37.989230903Z app=core-command source=httpserver.go:109 msg="Web server shutting down"
level=INFO ts=2022-05-03T03:37:37.989318622Z app=core-command source=httpserver.go:111 msg="Web server shut down"
level=INFO ts=2022-05-03T03:37:38.988982755Z app=core-command source=telemetry.go:98 msg="Telemetry stopped"
level=INFO ts=2022-05-03T03:37:38.989072256Z app=core-command source=bootstrap.go:135 msg="Un-Registering service from the Registry"`

i have beening trapped in this for a long time ,

hope u can help me ,thanks !

[Examples] Camera Management App Service

🚀 Feature Request

Relevant Package [REQUIRED]

Custom App Service examples

Description [REQUIRED]

Custom application service example that manages/controls ONVIF cameras

Describe the solution you'd like

Service will demonstrate how to detect newly added cameras and control then (tilt, pan, zoom) via the new device-onvif-camera service's commands. The service will have a simple UI to provide user control.

AWS Deployment template need to be update to Hanoi released images

These deployment templates are out of data and need to be update to be using the Hanoi released images, i.e. 1.3.1

This deployment template needs to be updated with the Hanoi images.
https://github.com/edgexfoundry/edgex-examples/blob/master/deployment/templates/aws-fargate.yaml

Use this Hanoi compose file for reference for the image versions.
https://github.com/edgexfoundry/edgex-compose/blob/hanoi/docker-compose-hanoi-no-secty.yml

[Helm] Update Helm deployment to be based on Kamakura

🚀 Feature Request

Relevant Package [REQUIRED]

Helm Deployment

Description [REQUIRED]

Needs to be based on Kamakura release

Describe the solution you'd like

Update image versions to be 2.2.0

Describe alternatives you've considered

Have you considered any alternative solutions or workarounds?

Examples: Upgrade App Service Examples to V2 SDK

Check items have been completed.

Configurable Examples

  • app-service-configurable-ibm

Custom Examples

  • advanced-filter-convert-publish
  • advanced-target-type
  • aws-export
  • azure-export
  • cloud-event
  • custom-trigger
  • fledge-export
  • influxdb-export
  • json-logic
  • secrets
  • send-command
  • simple-cbor-filter
  • simple-filter-xml
  • simple-filter-xml-http
  • simple-filter-xml-mqtt

Some questions about "send-command sample" application

Hi

I am referencing the architecture design in send-command sample and trying to use aws iot sdk replace Azure IoT SDK. I have some questions about this example:

  • How to deploy AWS Proxy Device Application(using AWS IoT SDK), do I need to start it as an application service in docker compose yaml file?
  • If I have used the aws iot cert and key stored in the vault in the aws export application which is using for sending mqtt event to aws cloud, how can i reuse the same cert and key in AWS Proxy Device Application which is using for receive mqtt command from aws cloud.
  • Is there any documentation shows how to store the cert and key in vault? I want to download aws iot cert and key from cloud and store in vault when device initialize.

helm deployment: edgex-ui CrashLoopBackOff

I followed deployment/helm README.md to deploy edgex over my k8s cluster,everything is going well except pod edge-ui,I got CrashLoopBackOff and all edge-ui logs I can see are as follow:

[root@k8s-master-xxx ~]# kubectl logs -f -n edgex edgex-ui-6c6c7c84f5-z5gtc
level=INFO ts=2022-12-07T10:20:02.023721073Z app=edgex-ui-service source=config.go:392 msg="Loaded service configuration from res/docker/configuration.toml"
level=INFO ts=2022-12-07T10:20:02.027470947Z app=edgex-ui-service source=config.go:556 msg="Using local configuration from file (0 envVars overrides applied)"
level=INFO ts=2022-12-07T10:20:02.036156832Z app=edgex-ui-service source=httpserver.go:133 msg="Web server starting (localhost:4000)"
level=INFO ts=2022-12-07T10:20:02.036272605Z app=edgex-ui-service source=message.go:50 msg="Service dependencies resolved..."
level=INFO ts=2022-12-07T10:20:02.036299363Z app=edgex-ui-service source=message.go:51 msg="Starting edgex-ui-service 2.3.0 "
level=INFO ts=2022-12-07T10:20:02.036318586Z app=edgex-ui-service source=message.go:55 msg="edgex-ui-go service started"
level=INFO ts=2022-12-07T10:20:02.036339094Z app=edgex-ui-service source=message.go:58 msg="Service started in: 16.30664ms"
level=INFO ts=2022-12-07T10:20:31.811516853Z app=edgex-ui-service source=httpserver.go:158 msg="Web server stopped"
level=INFO ts=2022-12-07T10:20:31.813073451Z app=edgex-ui-service source=httpserver.go:130 msg="Web server shut down"

There are two ping test get error response:
Ping edgex-support-ruleengine
curl http://localhost:59861/ got 404 page not found
Ping edgex-ui
curl http://localhost:4000/ got curl: (7) Failed to connect to ::1: No route to host

The related release is v2.3.0 What's happened and how to fix it?

Want the Hanoi Release "edgex-examples" please.

Good afternoon,

I'm using EdgeX Foundry in an university project, but can't find the "edgex-examples" folder for the Hanoi release! Currently I'm at the stage that I can't update to a newer version (i.e. Ireland) and I still wanted to look at the information in those folders.

Thank you.

[Device Services] Update examples to be based on Kamakura

🚀 Feature Request

Relevant Package [REQUIRED]

Device Service Examples

Description [REQUIRED]

Need to be based on Kamakura

Describe the solution you'd like

Update go.mod files to use SDK 2.2.0 and 2.2.0 version of go-mods.

Describe alternatives you've considered

Have you considered any alternative solutions or workarounds?

[App Service] Update examples for Kamakura once SDK released.

🚀 Feature Request

Relevant Package [REQUIRED]

App Service Examples

Description [REQUIRED]

Need to be based on Kamakura

Describe the solution you'd like

Update go.mod files to use SDK 2.2.0 and 2.2.0 version of go-mods.

Describe alternatives you've considered

Have you considered any alternative solutions or workarounds?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.