Làm cách nào tôi có thể theo dõi, từ đám mây (ví dụ như điều gì đó), điều gì đó không xảy ra?


7

Tôi có một vài trường hợp sử dụng cho việc này nhưng tôi sẽ chỉ sử dụng một kịch bản đơn giản làm ví dụ. Tôi muốn theo dõi pi mâm xôi của tôi và đảm bảo một số nhiệm vụ đang hoàn thành đúng. Tôi muốn thêm một dòng trong tập lệnh để đăng lên đám mây xác nhận khi tập lệnh được chạy. Phần này tôi nghĩ tôi có thể làm được.

Câu hỏi tôi có là làm thế nào để biết nếu nhiệm vụ không được hoàn thành trong khung thời gian dự kiến. Một cái gì đó tương tự như những gì wdt.io làm cho các công việc định kỳ. Về cơ bản một số loại

if time/date is <past expected completion> then check <thingspeak API> for value returned by script
else send email <it seems script1234> failed

Có một dịch vụ có thể kiểm tra giá trị ở đâu đó không? ví dụ: http lấy api mọi thứ và hành động tùy thuộc vào giá trị.


Bạn cần tìm hiểu cách triển khai một cơ quan giám sát trong dịch vụ đám mây mà bạn lựa chọn. Nếu bạn không thể tìm thấy một sự kiện, có lẽ bạn có thể lên lịch cho một sự kiện trong tương lai và hủy bỏ nó nếu bạn thành công. Và sau đó, một trong hai cách sắp xếp lại một trong những tương lai khác.
Chris Stratton

Tôi đang tìm kiếm một dịch vụ đám mây thực hiện điều này hoặc tốt hơn Tôi đang tìm kiếm một dịch vụ đám mây có thể kiểm tra giá trị ở đâu đó và hành động tùy thuộc vào giá trị. Nếu bạn hoặc ai đó biết về một dịch vụ như vậy xin vui lòng cho chúng tôi biết.
FoxSam12

Bạn đã xem IFTTT chưa?
Chris Stratton

Tôi đã xem xét ifttt và tôi không thể tìm ra cách thiết lập những gì tôi cần. Tôi đã thử sử dụng webhooks và phản ứng từ Thingspeak nhưng tôi không biết cách thiết lập nó dựa trên thời gian / ngày và giá trị!
FoxSam12

Sử dụng Thingspeak, bạn có thể thiết lập kênh dữ liệu proxy thu thập cờ trạng thái và giá trị thời gian trôi qua từ Raspberry Pi của bạn không? Khi không chạy, đặt cả hai thành 0, khi tác vụ bắt đầu được đặt thành 1 và thời gian đã trôi qua. Khi hoàn thành thay đổi cờ và thời gian trở về 0. Phản ứng của bạn sau đó có thể tìm kiếm cờ = 1 và thời gian trôi qua> X giây / phút và hành động tương ứng.
Geoff

Câu trả lời:


4

Thứ nhất, một cách đơn giản để giám sát các loại điều kiện này là theo dõi bao lâu thì nhiệm vụ cuối cùng đã hoàn thành.

Thay vì biết khi nào kịch bản tiếp theo sẽ được hoàn thành, nếu chúng ta biết có nên thực hiện sau mỗi 6 giờ hay không, bây giờ chúng ta chỉ cần so sánh thời gian thực hiện cuối cùng với 'bây giờ', nếu số giờ giữa hai lần (now - lastExecution)này lớn hơn 6, sau đó kích hoạt cảnh báo của bạn.

chỉ cần đăng dấu thời gian khi tác vụ / tập lệnh được hoàn thành lần cuối cùng với mọi thứ, giờ đây, bạn chỉ cần theo dõi dấu thời gian đó theo tần suất thường xuyên, thường nhỏ hơn khoảng thời gian mà bạn đang cố gắng phát hiện, nếu nó lớn hơn 'x' phút trước, gửi cảnh báo.

if <thingspeak API - Last Execution> more than x hours ago
send email <it seems script1234> failed

Nếu công cụ giám sát của bạn không có các chức năng thời gian ngày đơn giản hoặc các hoạt động logic mà bạn có thể định cấu hình theo cách trên ,. thay đổi tập lệnh của bạn để báo cáo dấu thời gian với khoảng thời gian 'x' được thêm vào nó, vì vậy nếu đó là tập lệnh 6 giờ, hãy thêm 6 giờ vào dấu thời gian mà bạn gửi, giờ đây logic theo dõi rất đơn giản:

if <thingspeak API - Last Execution Expiry> greater than now
send email <it seems script1234> failed

Nếu điều đó không phù hợp với bạn, hoặc có lẽ bạn có thể kết hợp điều đó với việc sửa đổi tập lệnh của mình để đăng khi bắt đầu để xóa cờ trạng thái, hãy báo cáo một cách hiệu quả rằng "tập lệnh 1 đang bắt đầu" và tùy ý ghi lại thời gian bắt đầu.

Bây giờ đã có thời gian bắt đầu và thời gian kết thúc, bạn có thể theo dõi nếu (End-Start)lớn hơn x giờ để xác định xem tập lệnh có mất nhiều thời gian để thực thi hay không, nếu Start > Endtập lệnh vẫn đang thực thi hoặc không hoàn thành.


Đây thực sự không phải là cách tôi muốn trả lời các loại câu hỏi này vì chúng tôi không thực sự nên chứng thực các sản phẩm cụ thể, nhưng tôi muốn tạo một ngoại lệ trong trường hợp này. Có nhiều dịch vụ miễn phí và trả phí mà bạn có thể sử dụng cho nhiệm vụ này. Sử dụng Bing hoặc Google để tìm chúng :)

Tôi sử dụng nền tảng Bizeo cho loại giám sát này. Tôi không liên kết với sản phẩm này, nhưng rất hài lòng với nó

Có rất nhiều mẫu trong đó, một mẫu sẽ định kỳ ping điểm cuối REST và hoạt động dựa trên phản hồi, vì vậy bạn có thể nhắm mục tiêu trực tiếp vào api. Có một số mẫu đơn giản khác được người dùng hành động thậm chí sử dụng email làm trình kích hoạt hoặc thiếu email trong một khung thời gian nhất định. Các thông báo SMS hoặc email khi thời hạn bị bỏ lỡ rất dễ thiết lập.

Vì vậy, bạn có thể gửi thông báo của mình đến dịch vụ đó trực tiếp, dưới dạng email từ thiết bị của mình hoặc bạn có thể sử dụng API REST của họ để gửi thông báo rằng tập lệnh đã hoàn thành.


Có cách nào trong phạm vi điều (hoặc dựa trên đám mây khác) để thực hiện kiểm tra. Tôi đang tìm kiếm một cách mà tất cả các giám sát được thực hiện trong đám mây.
FoxSam12
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.