Giter Site home page Giter Site logo

azure-iot-pcs-remote-monitoring-java's Introduction

Build status Issues Gitter

Note: As of December 10th 2020, Remote Monitoring solution accelerator is no longer supported. All supporting repositories have been archived. Check the FAQ to learn more.

Remote Monitoring Solution with Azure IoT

Overview

There is a .NET version of this repo available here

Remote monitoring helps you get better visibility into your devices, assets, and sensors wherever they happen to be located. You can collect and analyze real-time device data using a remote monitoring solution that triggers automatic alerts and actions — from remote diagnostics to maintenance requests. You can also command and control your devices.

Azure IoT Hub is a key building block of the remote monitoring solution. IoT Hub is a fully managed service that enables reliable and secure bidirectional communications between millions of IoT devices and a solution back end.

Check out the Interactive Demo for a detailed overview of features and use cases.

To get started you can follow along with the Getting Started for a command line deployment. You can also deploy using the web interface at https://www.azureiotsolutions.com.

Documentation

See more documentation here.

Getting Started

Deploy a solution

There are three ways to deploy a solution:

  1. Deploy using the web interface using the instructions here.
  2. Deploy using the command line.
  3. Deploy locally using Visual Studio or Docker.

Create additional simulated devices

Once you have a solution up and running, you can create additional simluated devices. You can then stop the default simulated devices by calling the simulation endpoint with the instructions here.

Connect a physical device!

By default, the solution once spun up uses simulated devices. You can start adding your own devices with the instructions here.

Customize the Web UI

You can find information about customizing the remote monitoring solution here.

Architecture Overview

Learn more about the Remote Monitoring architecture, including the use of microservices and Docker containers.

Components

How-to and Troubleshooting Resources

Feedback

  • If you have feedback, feature requests, or find a problem, you can create a new issue in the GitHub Issues
  • We have a User Voice channel to receive suggestions for features and future supported scenarios.

Contributing

Refer to our contribution guidelines. We love PRs!

License

Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License.

azure-iot-pcs-remote-monitoring-java's People

Contributors

ashdonaldson14 avatar avneet723 avatar dluc avatar elvinm avatar giyeh avatar hegate avatar isaac-dasan avatar jillcary avatar microsoftopensource avatar msftgits avatar ppathan avatar prafullkotecha avatar sushilraje avatar timlaverty avatar vitoc avatar zhang-hua 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

azure-iot-pcs-remote-monitoring-java's Issues

"Docker-compose up" throws error due to "docker_webui_1"

Type of issue

  • Bug
  • New feature
  • Improvement

Description

In the Java version of the repo, the docker-compose.yml that is under the "azure-iot-pcs-remote-monitoring-java/scripts/docker does not comment out line 39-40:

  1. webui:
  2. image: azureiotpcs/pcs-remote-monitoring-webui:testing
  3. ports:
    • "443:443"
  4. depends_on:
    • auth
    • iothubmanager
    • devicesimulation
    • telemetry
    • config
  5. #volumes:
  6. - /app/webui-config.js:/app/build/config.js:ro

  7. Steps to reproduce

This leads to an error when performing "docker-compose up"

ERROR: for docker_webui_1  Cannot start service webui: Mounts denied: 
The path /app/webui-config.js

is not shared from OS X and is not known to Docker.

  1. Run "docker-compose up"

Expected behavior

No error

Current behavior

Gives an error:

ERROR: for docker_webui_1  Cannot start service webui: Mounts denied: 
The path /app/webui-config.js

is not shared from OS X and is not known to Docker.

Possible solution

Comment out lines 39-40 of the docker-compose.yml.

Simulation Agent - Unable to fetch the IoT device

Type of issue

  • Bug
  • New feature
  • Improvement

Description

Whenever I try to deploy a remotemonitoring solution there is no data available on the Web GUI.
I ssh into the VM and get the log of the device-simulation-dotnet:1.0.0-preview.2
Then I saw the following exception that may be the cause of data not being available on the Web GUI:

[ERROR][2017-11-13 17:35:33.396][SimulationAgent.16a35158-b7af-4873-aa3b-c3ec46d29ce0][Devices:CreateAsync] Unable to fetch the IoT device, {"deviceId":"Simulated.chiller-02.0","e":{"ExceptionFullName":"Microsoft.Azure.Devices.Common.Exceptions.IotHubException","ExceptionMessage":"Additional text found in JSON string after finishing deserializing object

Steps to reproduce

  1. pcs -t remotemonitoring -s basic -r java
  2. Tried to see the data on the dashboard
  3. No data available

Expected behavior

...

app_devicesimulation_1.txt

Current behavior

...

Known workarounds

...

Possible solution

...

Context and Environment

  • Operating System: ...
  • GitHub branch: ...
  • Java JDK/JRE: ...

Code to reproduce the bug

import org.junit.*;
import org.junit.experimental.categories.Category;

public class MyTest {

    @Test(timeout = 5000)
    public void TestToReproduceIssue() {
        // Arrange
        ...

        // Act
        ...

        // Assert
        ...
    }
}

Telemetry agent timeouts and is unable to load monitoring rules.

Type of issue

  • Bug
  • New feature
  • Improvement

Description

When running docker-compose up, telemetryagent_1 runs into an issue where it timesout and can't load the monitoring rules:

telemetryagent_1 | [error] c.m.a.i.i.s.Rules - Request to http://telemetry:9004/v1/rules failed: java.util.concurrent.TimeoutException: Request timeout to telemetry/172.19.0.5:9004 after 10000 ms
telemetryagent_1 | [error] c.m.a.i.i.s.Alarms - Unable to load monitoring rules

Steps to reproduce

Run docker-compose up and see the error in the logs:

telemetryagent_1 | [error] c.m.a.i.i.s.Rules - Request to http://telemetry:9004/v1/rules failed: java.util.concurrent.TimeoutException: Request timeout to telemetry/172.19.0.5:9004 after 10000 ms
telemetryagent_1 | [error] c.m.a.i.i.s.Alarms - Unable to load monitoring rules

Expected behavior

Shouldn't do this.

Remove Device-Simulation submodule

Type of issue

  • Bug
  • New feature
  • Improvement

Description

Device simulation is no longer a submodule rather it is a dependecny

Steps to reproduce

  1. [First step]
  2. [Second step]
  3. [and so on...]

Expected behavior

...

Current behavior

...

Known workarounds

...

Possible solution

...

Context and Environment

  • Operating System: ...
  • GitHub branch: ...
  • Java JDK/JRE: ...

Code to reproduce the bug

import org.junit.*;
import org.junit.experimental.categories.Category;

public class MyTest {

    @Test(timeout = 5000)
    public void TestToReproduceIssue() {
        // Arrange
        ...

        // Act
        ...

        // Assert
        ...
    }
}

Post Installation of Java based RM Accelerator , Application UI is not showing data

Type of issue

  • Bug

Description

Post successful installation of the RM Accelerator Java code base.. The UI is showing Error: unexpected character at line 1 column 1 of the JSON data

Steps to reproduce

  1. Complete installation
  2. Launch the application https://remotemonitoringpaygo.azurewebsites.net/dashboard
  3. see Error: unexpected character at line 1 column 1 of the JSON data on the user

Expected behavior

UI Should display default devices and telemetry data
...

Current behavior

Error: unexpected character at line 1 column 1 of the JSON data
...

Connection to storage adapter is refused.

Type of issue

  • Bug
  • New feature
  • Improvement

Description

Run docker-compose up, and see how storageadapter_1 crashes with the following error:

config_1 | [error] c.m.a.i.u.s.h.HttpClient - Request failed
config_1 | org.apache.http.conn.HttpHostConnectException: Connect to storageadapter:9022 [storageadapter/172.19.0.2] failed: Connection refused (Connection refused)
config_1 | at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:159)
config_1 | at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:359)
config_1 | at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:381)
config_1 | at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:237)
config_1 | at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:185)
config_1 | at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
config_1 | at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:111)
config_1 | at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
config_1 | at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
config_1 | at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
config_1 | Caused by: java.net.ConnectException: Connection refused (Connection refused)
config_1 | at java.net.PlainSocketImpl.socketConnect(Native Method)
config_1 | at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
config_1 | at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
config_1 | at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
config_1 | at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
config_1 | at java.net.Socket.connect(Socket.java:589)
config_1 | at org.apache.http.conn.socket.PlainConnectionSocketFactory.connectSocket(PlainConnectionSocketFactory.java:75)
config_1 | at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
config_1 | at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:359)
config_1 | at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:381)

Steps to reproduce

Run docker-compose up, see the error.

Expected behavior

Shouldn't crash.

Current behavior

Crashes right now at load.

Known workarounds

Eventually works, but not sure why it's hitting this.

Job execution failure

Type of issue

  • Bug
  • New feature
  • Improvement

Description

Execute a firmware update job on the chillers from RM. The job seems to run (from the RM UI), but the firmware update is not reflected on the devicetwin and consequently on the UI.

While executing the job, the device simulation service throws an exception –

"DataAsJson":""{}"","e":{"ExceptionFullName":"Newtonsoft.Json.JsonSerializationException","ExceptionMessage":"Error converting value "{}" to type 'System.Collections.Generic.Dictionary`2[System.String,System.String]'

On querying the IotHub, the job is reported as “Completed” although it has failure.

3 Issues

  1. Is device simulation reporting job failures to IotHub?
  2. IotHubManager is escaping again already escaped string "JsonPaylod".
  3. Job Status API reports status 7 (successful completion) of the job even if job has failed in device simulation

Steps to reproduce

  1. Deploy remote monitoring solutions (java basic deployment).
  2. Run a Firmware update job for any of the device
  3. View job status & then the device firmware on the devices tab

Expected behavior

Job completion should be indicate successful or failed execution.

Current behavior

Failed jobs are reported as completed.

Known workarounds

None

Possible solution

Context and Environment

  • Operating System: Linux
  • GitHub branch: master
  • Java JDK/JRE: 1.8

Code to reproduce the bug

Running "Docker-Compose Up" throws error "docker_reverproxy_1" cannot start

Type of issue

  • Bug
  • New feature
  • Improvement

Description

On the Java version, the docker-compose.yml that is under the docker folder is missing a "." right before "/app/certs...". This is line 27. Without this dot, running "docker-compose up" ends up throwing this error:

ERROR: for docker_reverseproxy_1  Cannot start service reverseproxy: Mounts denied: 

The path /app/certs

Steps to reproduce

  1. Run Docker Compose Up

Expected behavior

No error

Current behavior

ERROR: for docker_reverseproxy_1  Cannot start service reverseproxy: Mounts denied: 

The path /app/certs

Possible solution

On the Java version, the docker-compose.yml that is under the docker folder is missing a "." right before "/app/certs...". This is line 27.

Device Simulation startup is slow and throws error.

Type of issue

  • Bug
  • New feature
  • Improvement

Description

When running "docker-compose up", device simulation fails to load and crashes:

devicesimulation_1  | [ERROR][2018-01-06 00:00:39.113][SimulationAgent.c0117961-0b55-40ba-898d-3c7f2f73f6c2][HttpClient:SendAsync] Request failed, {"errorMessage":"An error occurred while sending the request. - Couldn't connect to server","e":{"ExceptionFullName":"System.Net.Http.HttpRequestException","ExceptionMessage":"An error occurred while sending the request.","StackTrace":"   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult()\n   at System.Net.Http.HttpClient.<FinishSendAsyncBuffered>d__58.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n   at Microsoft.Azure.IoTSolutions.DeviceSimulation.Services.Http.HttpClient.<SendAsync>d__9.MoveNext() in E:\\Repos\\azure-iot-pcs-remote-monitoring-dotnet\\device-simulation\\Services\\Http\\HttpClient.cs:line 91","Source":"System.Private.CoreLib","Data":{},"InnerException":{"ExceptionFullName":"System.Net.Http.CurlException","ExceptionMessage":"Couldn't connect to server","StackTrace":"   at System.Net.Http.CurlHandler.ThrowIfCURLEError(CURLcode error)\n   at System.Net.Http.CurlHandler.MultiAgent.FinishRequest(StrongToWeakReference`1 easyWrapper, CURLcode messageResult)","Source":"System.Net.Http","Data":{},"InnerException":null}}}
devicesimulation_1  | [ERROR][2018-01-06 00:00:39.131][SimulationAgent.c0117961-0b55-40ba-898d-3c7f2f73f6c2][Simulation:RunAsync] Failure reading and starting simulation from storage., {"e":{"ExceptionFullName":"Microsoft.Azure.IoTSolutions.DeviceSimulation.Services.Exceptions.ExternalDependencyException","ExceptionMessage":"An unexpected error happened while using an external dependency.","StackTrace":"   at Microsoft.Azure.IoTSolutions.DeviceSimulation.Services.StorageAdapter.StorageAdapterClient.ThrowIfError(IHttpResponse response, String collectionId, String key) in E:\\Repos\\azure-iot-pcs-remote-monitoring-dotnet\\device-simulation\\Services\\StorageAdapter\\StorageAdapterClient.cs:line 172\n   at Microsoft.Azure.IoTSolutions.DeviceSimulation.Services.StorageAdapter.StorageAdapterClient.<GetAllAsync>d__7.MoveNext() in E:\\Repos\\azure-iot-pcs-remote-monitoring-dotnet\\device-simulation\\Services\\StorageAdapter\\StorageAdapterClient.cs:line 84\n--- End of stack trace from previous location where exception was thrown ---\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n   at Microsoft.Azure.IoTSolutions.DeviceSimulation.Services.Simulations.<GetListAsync>d__7.MoveNext() in E:\\Repos\\azure-iot-pcs-remote-monitoring-dotnet\\device-simulation\\Services\\Simulations.cs:line 46\n--- End of stack trace from previous location where exception was thrown ---\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n   at Microsoft.Azure.IoTSolutions.DeviceSimulation.SimulationAgent.Simulation.Simulation.<RunAsync>d__6.MoveNext() in E:\\Repos\\azure-iot-pcs-remote-monitoring-dotnet\\device-simulation\\SimulationAgent\\Simulation\\Simulation.cs:line 47","Source":"Microsoft.Azure.IoTSolutions.DeviceSimulation.Services","Data":{},"InnerException":{"ExceptionFullName":"System.Net.Http.HttpRequestException","ExceptionMessage":"Storage request error: status code 0","StackTrace":null,"Source":null,"Data":{},"InnerException":null}}} 

Steps to reproduce

Run docker-compose up on the Java version and see it happen.

Expected behavior

Not crash

Current behavior

Error put out:

devicesimulation_1  | [ERROR][2018-01-06 00:00:39.113][SimulationAgent.c0117961-0b55-40ba-898d-3c7f2f73f6c2][HttpClient:SendAsync] Request failed, {"errorMessage":"An error occurred while sending the request. - Couldn't connect to server","e":{"ExceptionFullName":"System.Net.Http.HttpRequestException","ExceptionMessage":"An error occurred while sending the request.","StackTrace":"   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n   at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult()\n   at System.Net.Http.HttpClient.<FinishSendAsyncBuffered>d__58.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n   at Microsoft.Azure.IoTSolutions.DeviceSimulation.Services.Http.HttpClient.<SendAsync>d__9.MoveNext() in E:\\Repos\\azure-iot-pcs-remote-monitoring-dotnet\\device-simulation\\Services\\Http\\HttpClient.cs:line 91","Source":"System.Private.CoreLib","Data":{},"InnerException":{"ExceptionFullName":"System.Net.Http.CurlException","ExceptionMessage":"Couldn't connect to server","StackTrace":"   at System.Net.Http.CurlHandler.ThrowIfCURLEError(CURLcode error)\n   at System.Net.Http.CurlHandler.MultiAgent.FinishRequest(StrongToWeakReference`1 easyWrapper, CURLcode messageResult)","Source":"System.Net.Http","Data":{},"InnerException":null}}}
devicesimulation_1  | [ERROR][2018-01-06 00:00:39.131][SimulationAgent.c0117961-0b55-40ba-898d-3c7f2f73f6c2][Simulation:RunAsync] Failure reading and starting simulation from storage., {"e":{"ExceptionFullName":"Microsoft.Azure.IoTSolutions.DeviceSimulation.Services.Exceptions.ExternalDependencyException","ExceptionMessage":"An unexpected error happened while using an external dependency.","StackTrace":"   at Microsoft.Azure.IoTSolutions.DeviceSimulation.Services.StorageAdapter.StorageAdapterClient.ThrowIfError(IHttpResponse response, String collectionId, String key) in E:\\Repos\\azure-iot-pcs-remote-monitoring-dotnet\\device-simulation\\Services\\StorageAdapter\\StorageAdapterClient.cs:line 172\n   at Microsoft.Azure.IoTSolutions.DeviceSimulation.Services.StorageAdapter.StorageAdapterClient.<GetAllAsync>d__7.MoveNext() in E:\\Repos\\azure-iot-pcs-remote-monitoring-dotnet\\device-simulation\\Services\\StorageAdapter\\StorageAdapterClient.cs:line 84\n--- End of stack trace from previous location where exception was thrown ---\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n   at Microsoft.Azure.IoTSolutions.DeviceSimulation.Services.Simulations.<GetListAsync>d__7.MoveNext() in E:\\Repos\\azure-iot-pcs-remote-monitoring-dotnet\\device-simulation\\Services\\Simulations.cs:line 46\n--- End of stack trace from previous location where exception was thrown ---\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n   at Microsoft.Azure.IoTSolutions.DeviceSimulation.SimulationAgent.Simulation.Simulation.<RunAsync>d__6.MoveNext() in E:\\Repos\\azure-iot-pcs-remote-monitoring-dotnet\\device-simulation\\SimulationAgent\\Simulation\\Simulation.cs:line 47","Source":"Microsoft.Azure.IoTSolutions.DeviceSimulation.Services","Data":{},"InnerException":{"ExceptionFullName":"System.Net.Http.HttpRequestException","ExceptionMessage":"Storage request error: status code 0","StackTrace":null,"Source":null,"Data":{},"InnerException":null}}}

Known workarounds

It eventually runs, but why is it hitting this error and delaying startup?

Decide on what the frequency of the messages should be for Basic vs Enterprise

Type of issue

  • Bug
  • New feature
  • Improvement

Description

After starting a Basic or Enterprise deployment, we hit the IotHubQuotaExceeded exception pretty easily. We should decide on what the frequency of messages, device count etc should be, such that the simulation and messages are meaningful for reasonable amount of time

PCS_APPLICATION_SECRET variable not set, causes container to exit early.

Type of issue

  • Bug
  • New feature
  • Improvement

Description

In the .env file, we don't have a variable called PCS_APPLICATION_SECRET. This is needed for the Java version of the RM PCS to run, or else the containers exit early with the following error:

Configuration error: Configuration error[
The application secret has not been set, and we are in prod mode. Your application is not secure.
To set the application secret, please read http://playframework.com/documentation/latest/ApplicationSecret

I just set the variable to any random number and it worked correctly.

Steps to reproduce

  1. Run "Docker Compose Up"
  2. Type in "Docker ps -a"
  3. Locate any docker image that is crashing and look at the logs: "docker logs [container ID]"

Expected behavior

Expect the docker containers to not exit early.

Current behavior

It's exiting early with the error:

Configuration error: Configuration error[
The application secret has not been set, and we are in prod mode. Your application is not secure.
To set the application secret, please read http://playframework.com/documentation/latest/ApplicationSecret

Possible solution

Add PCS_APPLICATION_SECRET to .env and set it to any integer value.

Storage Adapter repo tree that PCS is using has build errors.

Type of issue

  • Bug
  • New feature
  • Improvement

Description

The version of the storage adapter that the remote monitoring repository is pointing to has build errors when master does not.
...

Steps to reproduce

  1. git clone --recurse on this repo
  2. cd storage-adapter
  3. ./scripts/build

Expected behavior

Tests run with no error messages

Current behavior

Error message

✘ jwendl  /c/Source/GitHub/azure-iot-pcs-remote-monitoring-java/storage-adapter  ➦ 0b16dd5 ●  ./scripts/build

Running tests...

/c/Source/GitHub/azure-iot-pcs-remote-monitoring-java/storage-adapter/build.sbt:29: error: not found: value assemblyMergeStrategy
assemblyMergeStrategy in assembly := {
^
/c/Source/GitHub/azure-iot-pcs-remote-monitoring-java/storage-adapter/build.sbt:58: error: not found: value PlayJava
.enablePlugins(PlayJava)
^
sbt.compiler.EvalException: Type error in expression
[error] sbt.compiler.EvalException: Type error in expression
[error] Use 'last' for the full log.
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? q

Known workarounds

Clone pcs-storage-adapter-java manually at master and try to make that work.

Possible solution

Context and Environment

  • Operating System: Windows 10 using WSL Ubuntu 16.04
  • GitHub branch: remote monitoring master
  • Java JDK/JRE:
    openjdk version "1.8.0_162"
    OpenJDK Runtime Environment (build 1.8.0_162-8u162-b12-0ubuntu0.16.04.2-b12)
    OpenJDK 64-Bit Server VM (build 25.162-b12, mixed mode)

Dashboard Error

Type of issue

  • Bug
  • New feature
  • Improvement

Description

See attached screenshot
azure-iot-solutions-java-remote-monitoring-local-dashboard

Steps to reproduce

Followed the steps given here

Expected behavior

Please see attached image from this page
solutiondashboard-expanded

Document PCS All-Up Cost

Type of issue

  • Bug
  • New feature
  • Improvement

Description

Provide customers with a clear summary of the cost breakdown of PCS.
Help customers calculate and modify azure resources to meet their needs (IoTHub, DocumentDb, Storage, etc..)
Help customers understand how adding devices, telemetry frequency, and larger telemetry payloads effect cost.

Java version of the repo is missing the "/scripts/local" folder.

Type of issue

  • Bug
  • New feature
  • Improvement

Description

Trying to follow tutorial.

The java version is missing the entire "local" folder where the docker-compose.yml should be and the ".env". I also don't think this area path is correct. This step is asking me to update a .env file under /scripts/docker/local

image

But later on under the section "Run the solution with docker-compose", it asks me to run docker-compose under the following area path which is not the same as this first step:

{path to remote monitoring repo}/azure-iot-pcs-remote-monitoring-{runtime}/scripts/local
image

Steps to reproduce

  1. Clone the azure-iot-pcs-remote-monitoring-java repo
  2. Follow the tutorial
  3. Step 1 under "Set up Environment Variable" is missing the entire local folder.

Expected behavior

Expected a local folder.

Current behavior

Local folder is missing.

Known workarounds

Manually copying and pasting the local folder from the .NET version.

Possible solution

Copy the local folder from .NET, change anything referring to .NET to Java, and then check it in.

Context and Environment

MAC OSX

Code to reproduce the bug

import org.junit.*;
import org.junit.experimental.categories.Category;

public class MyTest {

    @Test(timeout = 5000)
    public void TestToReproduceIssue() {
        // Arrange
        ...

        // Act
        ...

        // Assert
        ...
    }
}

Document DB database accounts creation failure

Type of issue

  • [x ] Bug
  • New feature
  • Improvement

Description

...while deploying the dotnet solution from cli, fails at provisioning stage documentDB/creatingdatabaseaccounts

Found the below error on portal before the deployment is rolled back and every resource provisioned gets rolled back(deleted)

{"status":"Failed","error":{"code":"ResourceOperationFailure","message":"The resource operation completed with terminal provisioning state 'Failed'.","details":[{"code":"ServiceUnavailable","message":"Sorry, we are currently experiencing high demand in this region, and cannot fulfill your request at this time. We work continuously to bring more and more capacity online, and encourage you to try again shortly. Please do not hesitate to contact us via Azure support at any time or for any reason using this link http://aka.ms/azuresupport.\r\nActivityId:

Screenshot

image

Steps to reproduce

Follow instructions on the Microsoft website link below
https://docs.microsoft.com/en-gb/azure/iot-accelerators/iot-accelerators-remote-monitoring-deploy-cli

Expected behavior

Current behavior

...

Known workarounds

...

Possible solution

...

Context and Environment

  • Operating System: ...
  • GitHub branch: ...
  • .NET Runtime: ...

Add tests to ensure repo and submodules are configured

Type of issue

  • Bug
  • New feature
  • Improvement

Description

Ensure that the repository is well configured:

  • All expected submodules exist
  • All submodules contain code (i.e. are not empty)
  • The solution can be launched
  • Submodules point to a tag

Missing directory reverse-proxy

Type of issue

  • Bug
  • New feature
  • [X ] Improvement

Description

The directory of reverse-proxy submodule does not exist.
This element is present in the azure-iot-pcs-remote-monitoring-dotnet project.

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.