client = new Client([ "url" => "http://localhost:8086", "token" => "my-token", "bucket" => "my-bucket", "precision" => WritePrecision::NS, "org" => "my-org", "debug" => false ]); $this->writeApi = $this->client->createWriteApi(); } public function testExistsWriteApi() { $this->assertNotNull($this->writeApi); } public function testWriteApiWriteRaw() { $payload = 'h2o_feet,location=coyote_creek water_level=2.0 2'; $response = $this->writeApi->writeRaw($payload); self::assertNull($response); } public function testWriteArray() { $data = [ 'name' => "h2o", 'tags' => [ 'host' => 'aws', 'region' => 'us' ], 'fields' => [ 'level' => 5, 'saturation' => 99 ], 'time' => 123 ]; $response = $this->writeApi->write($data, WritePrecision::S, "my-bucket", "my-org"); self::assertNull($response); } public function testBatchingWrite() { $writeApi = $this->client->createWriteApi( ["writeType"=>WriteType::BATCHING, 'batchSize'=>3] ); $data = ['name' => 'cpu', 'tags' => ['host' => 'server_nl', 'region' => 'us'], 'fields' => ['internal' => 5, 'external' => 6], 'time' => microtime(true)]; $writeApi->write($data, WritePrecision::MS); $p1 = ['name' => "h2o", 'tags' => ['host' => 'aws', 'region' => 'us'], 'fields' => ['level' => 1, 'saturation' => 99], 'time' => 1]; $p2 = ['name' => "h2o", 'tags' => ['host' => 'aws', 'region' => 'us'], 'fields' => ['level' => 2, 'saturation' => 98], 'time' => 2]; $p3 = ['name' => "h2o", 'tags' => ['host' => 'aws', 'region' => 'us'], 'fields' => ['level' => 3, 'saturation' => 97], 'time' => 3]; $p4 = ['name' => "h2o", 'tags' => ['host' => 'aws', 'region' => 'us'], 'fields' => ['level' => 4, 'saturation' => 96], 'time' => 4]; $p5 = ['name' => "h2o", 'tags' => ['host' => 'aws', 'region' => 'us'], 'fields' => ['level' => 5, 'saturation' => 95], 'time' => 5]; $p6 = ['name' => "h2o", 'tags' => ['host' => 'aws', 'region' => 'us'], 'fields' => ['level' => 6, 'saturation' => 95], 'time' => 6]; $writeApi->write($p1); $writeApi->write($p2); $writeApi->write($p3); $writeApi->write($p4); $writeApi->write($p5); $writeApi->write($p6); $this->assertNotNull($writeApi); $this->client->close(); } public function testWriteArrayOfPoint() { $point1 = Point::measurement('h2o') ->addTag('location', 'europe') ->addField('level', 2) ->time(123); $point2 = Point::measurement('h2o') ->addTag('location', 'europe') ->addField('level', 3) ->time(124); $data = array($point1, $point2); $response = $this->writeApi->write($data, WritePrecision::S, "my-bucket", "my-org"); self::assertNull($response); } public function testWriteArrayOfArray() { $data1 = [ 'name' => "h2o", 'tags' => [ 'host' => 'aws', 'region' => 'us' ], 'fields' => [ 'level' => 5, 'saturation' => 99 ], 'time' => 123 ]; $data2 = [ 'name' => "h2o", 'tags' => [ 'host' => 'aws', 'region' => 'us' ], 'fields' => [ 'level' => 6, 'saturation' => 98 ], 'time' => 124 ]; $data = array($data1, $data2); $response = $this->writeApi->write($data, WritePrecision::S, "my-bucket", "my-org"); self::assertNull($response); } }