#go#aws#azure#cncf#cost#cost_optimization#finops#gcp#k8s#kubernetes#monitoring#opencost#prometheus
OpenCost is a free, open-source tool that helps you see and understand the costs of running Kubernetes clusters and cloud services in real time. It breaks down costs by cluster, node, namespace, pod, and more, across multiple cloud providers like AWS, Azure, and GCP, and even supports on-premises setups. This lets you track where your money is going, spot expensive resources, and manage your cloud spending better. It integrates with Prometheus for metrics and offers a user-friendly web interface and APIs for easy cost monitoring and exporting. Using OpenCost helps you control and optimize your cloud and Kubernetes expenses efficiently[1][2][3][4].
https://github.com/opencost/opencost
🚀 Вышел стабильный JavaScript движок от Google для Android
Новая стабильная библиотека Jetpack JavaScript Engine позволит разработчикам выполнять JS код в изолированной и ограниченной среде.
class MainActivity : ComponentActivity() {
// Теперь nullable, без lateinit
private var jsSandbox: JavaScriptSandbox? = null
private var jsIsolate: JavaScriptIsolate? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (!JavaScriptSandbox.isSupported()) {
Log.e("JS", "JavaScriptSandbox не поддерживается")
return
}
lifecycleScope.launch {
// Создаём и сохраняем в nullable-поле
jsSandbox = JavaScriptSandbox
.createConnectedInstanceAsync(applicationContext)
.await()
jsIsolate = jsSandbox?.createIsolate()
// При выполнении гарантируем, что jsIsolate != null
val result: String = jsIsolate
?.evaluateJavaScriptAsync(JS_SCRIPT_SCRING)
?.await()
?: "Ошибка: isolate не инициализирован"
Log.d("JS", "Результат выполнения: $result")
}
}
override fun onDestroy() {
super.onDestroy()
// Закрываем только если не null
jsIsolate?.close()
jsSandbox?.close()
}
}
#jetpack#js