GithubHelp home page GithubHelp logo

thousandeyes-sdk-go's People

Contributors

aaronvickers avatar brumarqu-te avatar cbhoffman avatar johntdyer avatar jtblanchard avatar pedro-te avatar raul-te avatar relvira avatar sfreitas-te avatar stephoule76 avatar tduzan-te avatar william20111 avatar wjwong93 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

thousandeyes-sdk-go's Issues

Add support for transactions tests

Story

As a developer I would like client support to create transactions tests

Detail

Should have consistent API like other test support & similar test coverage

  • Support Creating transactions tests
  • Support Delete transactions tests
  • Support Update transactions tests
  • Support Get transactions tests

Add support for voice-call

Story

As a developer I would like client support to create voice-call tests

Detail

Should have consistent API like other test support & similar test coverage

  • Support Creating voice-call tests
  • Support Delete voice-call tests
  • Support Update voice-call tests
  • Support Get voice-call tests

Add support for voice tests

Story

As a developer I would like client support to create voice tests

Detail

Should have consistent API like other test support & similar test coverage

  • Support Creating voice tests
  • Support Delete voice tests
  • Support Update voice tests
  • Support Get voice tests

ConcurrentMessages issue in setDelay()

  1. https://github.com/william20111/go-thousandeyes/blob/850c5703d1939f3d037a9757a8dd06581eeb4b5c/client.go#L246

We need to handle the case that the ConcurrentMessages list consists of all the past messages.

for i, t := range rate.ConcurrentMessages {
	if t.Sub(now) >= time.Duration(0) {
		rate.ConcurrentMessages = rate.ConcurrentMessages[i:]
		break
	}
        // Need to clear the list if it consists all the past messages, otherwise the delay will be increased for each incoming request.
	if i == (len(rate.ConcurrentMessages) -1) {
		rate.ConcurrentMessages = rate.ConcurrentMessages[:0]
	}
}

Page Load Test

Story

I as a library consumer would like go-thousandeyes to support test type page-load. This is so i can create page-load tests via the API

Details

Implement interface like http-server for page-load

Add support for dns-dnssec

Story

As a developer I would like client support to create dns-dnssec tests

Detail

Should have consistent API like other test support & similar test coverage

  • Support Creating dns-dnssec tests
  • Support Delete dns-dnssec tests
  • Support Update dns-dnssec tests
  • Support Get dns-dnssec tests

Add support for dnsp-domain

Story

As a developer I would like client support to create dnsp-domain tests

Detail

Should have consistent API like other test support & similar test coverage

  • Support Creating dnsp-domain tests
  • Support Delete dnsp-domain tests
  • Support Update dnsp-domain tests
  • Support Get dnsp-domain tests

Add support for ftp-server

Story

As a developer I would like client support to create ftp-sever tests

Detail

Should have consistent API like other test support & similar test coverage

  • Support Creating ftp-server tests
  • Support Delete ftp-server tests
  • Support Update ftp-server tests
  • Support Get ftp-server tests

Discuss possible refactor

Hey William,

I wanted to open the door to us having a discussion around the project structure and see if you would entertain a refactor of the code base to maybe make it more manageable ?

My thought process is is that we structure the project by domains, kinda like the AWS SDK does... what are your thoughts on this ?

-John

Support updating back to empty fields

The ThousandEyes API misses updating back to empty fields. For example:

$ curl -d '{"contentRegex":"Needle"}' -H "Content-Type: application/json" -H "Accept: application/json" -H "Authorization: Bearer redacted" https://api.thousandeyes.com/v6/tests/http-server/<test_number>/update

$ curl -sd '{"contentRegex":""}' -H "Content-Type: application/json" -H "Accept: application/json" -H "Authorization: Bearer redacted" https://api.thousandeyes.com/v6/tests/http-server/<test_number>/update | jq | grep Needle
      "contentRegex": "Needle",

It happens in many fields, such as contentRegex, username, password, customHeaders, alertRules, etc.

This is a limitation. For example, it's not possible to disable alert rules entirely if an alert rule was already defined.

This issue has been reported internally and a fix is pending.

Contributer access

@william20111

I know you're probably busy so I was wondering if you might entertain granting me access to merge PR's for these two repositories ? Maybe that way I can help review and merge ?

Regards,

John

May have to rethink the way we grouped tests

So today I was working on Labels and it turns out Labels can have Tests in its struct. Thats great however I am not sure how do that that since we have no top level Test type in the app... All tests actually should be part of this struct but I am not sure my Go is strong enough to know how to do that effectivly, since the tests struct would have to allow for a list of varying types ( ftp_server, dns_server, ect ect... ).. Do you have any strong opinions here ?

Also are you on Webex Teams or Discord by any chance ? or maybe we can setup Gitter for this repo to discuss?

NewClient should return an error along with *Client

Hello,

I was looking at this SDK and noticed that the NewClient only returns a *Client.

Returning an error along with a client like (*Client, error) would be a great help in case of any issues with the client.

Default value for DesiredStatusCode

Hello,

I noticed that there's no default value for DesiredStatusCode. The UI has a checkmark for Desired status code as Default (2xx or 3xx).

So, if a user doesn't specify the desired status code manually, DesiredStatusCode returns nil.

As a result, we cannot use the default checkmark in the UI and get a default response in the DesiredStatusCode field.

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.